勉強会
発表内容
前回の復習
- バイト単位での処理は string として扱えば OK
- 懸念点の払拭。途中の \0 とか 8bit スルーとか。
IO_Bit のご紹介
- バイナリ処理のパッケージ。ビットストリームの動作原理
- バイト単位、ビット単位での read/write が可能。
- 特定オフセットを書き換えたり、16進 dump したりといった便利関数
応用例1) IO_SWF
- Flash の実行ファイルの SWF の中身を書き換える
- SWF の中身をダンプするデモ
- SWF 内の画像を入れ替えるデモ
実は
- SWFEditor を導入すると PHP 自体を C 言語で機能拡張するので、IO_SWF と大体同じような機能でずっと軽い負荷。サービスで使うなら出来ればこちらで。
応用例2) IO_Zlib
- gzuncompress を IO_Bit で実装してみた。
- Zlib / Deflate の簡単な説明。
- 実装の説明。
- Zlib 伸長するデモ (gzcompress したデータが元に戻るところ)
|