Backup diff of
presen/PHP/binary2
vs current(No. 3)
Front page
Search
Recent changes
巡回
動画
Google
リンク
Help
Front page
New
Source
Recent changes
Referer
Search Key List
Link List
Impress Watch
その他の巡回
ニコニコ動画
YouTube
Google検索
Google地図
Google乗り換え
Googleニュース
pukiwiki-official
pukiwiki-dev
Wikiの書き方(整形ルール)
プラグインヘルプ
各種ドキュメント
Backup list
View the
diff
.
View the
diff current
.
View the
source
.
View the
backup
.
Go to
presen/PHP/binary2
.
勉強会
発表内容
前回の復習
IO_Bit のご紹介
応用例1) IO_SWF
実は
応用例2) IO_Zlib
勉強会
第57回PHP勉強会@東京
http://events.php.gr.jp/events/show/108
会場)
http://voyagegroup.com/company/access/
発表内容
pure PHP でバイナリ処理 ~ IO_Bit とその応用 ~
第52回に発表した
presen/PHP/binary
の続き。
前回の復習
バイナリって何? (エディタで開いてもよく分からないデータ)
バイト単位での処理は string として扱えば OK
懸念点の払拭。途中の \0 とか 8bit スルーとか。
IO_Bit のご紹介
バイナリ処理のパッケージ。
http://openpear.org/package/IO_Bit
ビットストリームの動作原理
バイト単位、ビット単位での read/write が可能。
特定オフセットを書き換えたり、16進 dump したりといった便利関数
応用例1) IO_SWF
Flash の実行ファイルの SWF の中身を書き換える
http://openpear.org/package/IO_SWF
SWF の中身をダンプするデモ
SWF 内の画像を入れ替えるデモ
実は
SWFEditor を導入すると PHP 自体を C 言語で機能拡張するので、IO_SWF と大体同じような機能でずっと軽い負荷。サービスで使うなら出来ればこちらで。
http://sourceforge.jp/projects/swfed/
応用例2) IO_Zlib
gzuncompress 相当の処理を IO_Bit で実装。
http://openpear.org/package/IO_Zlib
Zlib / Deflate の簡単な説明。
実装の説明。
Zlib 伸長するデモ (gzcompress したデータが元に戻るところ)