タグ

ブックマーク / blog.r-sky.jp (7)

  • HTTP(S) Stream with curlwrappers - 讃容日記

    ストリーム関数をいろいろ試していて、HTTP で(ほとんどの人は無視していいと思うけど)困ったことがあったのでメモ。 普通にコンパイルした PHP ではマニュアルにあるとおりにレスポンスヘッダが取れるんだけど、 % php -r '$stm = fopen("http://localhost/", "r"); print_r(stream_get_meta_data($stm));' Array ( [wrapper_data] => Array ( [0] => HTTP/1.1 200 OK [1] => Date: Fri, 03 Feb 2006 15:39:50 GMT [2] => Server: Apache/1.3.33 (Darwin) [3] => Content-Location: index.html.en [4] => Vary: negotiate,accept

    HTTP(S) Stream with curlwrappers - 讃容日記
  • 第4回 闇PHP勉強会レポート | チラシのうら

    スライドだけでなくて壁にマーカーで書いたり、ソースコードを参照しながら発表させてもらいました。 ミックスイン今回の発表の目玉(?)でもあったミックスイン記法は既存のPHPコード/ユーザーが自然にステップアップできる記法にできたなと自負しているので、是非とも次の次のPHP、おそらくPHP 5.6に入れるべく提案する計画です。(自負とか言ってもScalaの真似ですが) ミックスイン記法とは別に拡張モジュールとしてAOPサポートを入れようと目論んでおり、それがやりやすいようにAPIを整えるという末転倒な事も企んでいたり。 Zend Engineのcompilerからexecutorあたりの読みづらさは特筆に値するものがあり、これを改造してちゃんと動くものにするのは多少の慣れが必要ですが、まだまだ改善の余地のある子なので良くしていく手助けができればと思います。 しかしながら、長いことZend E

    第4回 闇PHP勉強会レポート | チラシのうら
  • ウノウの縁 | チラシのうら

    文を書く前に言っておくッ! おれは今やつのスタンドをほんのちょっぴりだが体験した い…いや…体験したというよりはまったく理解を超えていたのだが…… あ…ありのまま あのとき 起こった事を話すぜ! 『おれはウノウを受けていたと 思ったらいつのまにかジンガジャパンに勤めていた』 な… 何を言ってるのか わからねーと思うが おれも何をされたのかわからなかった… 頭がどうにかなりそうだった… ベンチャーだとかスタートアップだとか そんなチャチなもんじゃあ 断じてねえ もっと恐ろしいものの片鱗を味わったぜ… …さて、1ヶ月以上遅れてのウノウアドベントカレンダー記事です。(ごめんなさいごめんなさい) 僕がウノウに入ろうと思ったきっかけは、やはりウノウラボの存在が大きかった。 2000年代後半のPHP界ではあのブログを読んでなかったらモグリと断定できるぐらいあのブログはエッジが効いていた。 拙作のMe

    ウノウの縁 | チラシのうら
  • よみがえるQIQ | チラシのうら

    別エントリで実装等について書く前に、これまでの経緯のまとめ。 以前のエントリ で↓のように書いていたのだが、 Scalaライクなミックスイン はエイプリルフールネタです。申し訳ない。 気で取り組みたいですが、なかなか難しいですね。 求む、フルタイムでやらせてくれるお大尽。 プログラミングをしない人にPHPを少しわかりやすくする関数 “not” #phpadvent2012 に触発されて よーし、おじさんnot演算子をZend Engineに追加しちゃうぞー / “プログラミングをしない人にPHPを少しわかりやすくする関数 “not” #phpadvent2012 - 頭ん中” htn.to/HaqbQq 12月 14, 2012と言ってしまい、その流れでphp-srcをforkしてnot演算子を実装したり、until文/unless文を実装したりしているうちに気分がノってきて、Synfo

    よみがえるQIQ | チラシのうら
  • PHP 5.4.1の新機能: Scalaライクなミックスイン | チラシのうら

    2012年4月1日にリリースされたPHP 5.4.1では、マイナーバージョンアップにも関わらず言語仕様が拡張されるという、PHPクォリティ全開の変更があったので紹介しよう。 実体化時ミックスイン (Mix-in instantiation)クラスをインスタンス化する際にuse文でトレイトを追加できるようになった。トレイトは実行時に解決されるので、クラス宣言より後にトレイトを宣言することも可能。 例1<?php class JoJo {} trait HermitPurple { public function sayStand() { echo '隠者の紫'; } } trait StarPlatinum { public function sayStand() { echo '星の白金'; } } $joseph = new JoJo use HermitPurple; $jotaro

    PHP 5.4.1の新機能: Scalaライクなミックスイン | チラシのうら
    escape_artist
    escape_artist 2012/04/01
    僕もこのPHP欲しい!!
  • 讃容日記

    こんにちは。自分のブログを書くのはものすごく久しぶりのid:rskyです。何年知的便秘だったんだって感じですね。 表題のとおりこれからCコンパイラを作っていこうかと思います。同僚のDQNEOさんが<8cc.go>というコンパイラを作られていて、それに触発されて「Rustでやってみよう」ということで、<低レイヤを知りたい人のためのCコンパイラ作成入門>をCでなくRustでやっていきます。 Rust自体も初めてなので、それも含めてどんなものになっていくのか、自分でも楽しみです。 なお、今後このシリーズでは<低レイヤを知りたい人のためのCコンパイラ作成入門>を二重鉤括弧つきの『入門』と表記します。 開発環境 自分の開発マシンはMacですが、macOSはターゲットとせずLinuxで動くものを作っていきます。『入門』にも macOSLinuxとアセンブリのソースレベルでかなり互換性がありますが、完

    讃容日記
  • Speedy HTML Template Utilities 0.1.0 - 讃容日記

    php_speedy-0.1.0.tgz 瓢箪から出た駒というかなんというか、Speedyエクステンション正式リリース。 speedy関数はstdClass以外のオブジェクトもコンテキストとして受け付けるようになり、また、speedy関数の実行によってコンテキストが汚染されなくなりました。ただし、コンテキストが内包するオブジェクトの状態や参照として登録されている変数に関してはその限りではありません。 Speedyとは Speedyは、テンプレートエンジンではなくHTMLを出力するPHPスクリプトのためのユーティリティです。前に "37 lines of ~" と書いていたのは無かったことにしてください。 htmlspecialcharsなどの非常によく使う関数と等価で名前が短い (タイプ量が少なくなる) 関数、XML宣言を出力する関数、配列またはオブジェクトでローカル変数のシンボルテーブル

    Speedy HTML Template Utilities 0.1.0 - 讃容日記
    escape_artist
    escape_artist 2009/06/19
    おお。これだけあればいけそう
  • 1