PHPオペコードを記述してファイルに保存し、Zend Engineに実行させるにはどうすればよいですか?それがトリックを行う限り、どんな方法やハックも歓迎されます。
2281 次
2 に答える
5
オペコードを処理できる(プラグインからの)ユーザースペースメソッドがいくつかあります。
- http://uk.php.net/apc_bin_load(およびhttp://uk.php.net/apc_bin_dump)
- http://uk.php.net/bcompiler_read / http://uk.php.net/bcompiler_write_file
ただし、オペコードはユーザーが記述できる言語として設計されていないため(Parrotとは異なり)、どちらもプレーンテキストを生成しません。
于 2011-11-30T15:46:09.093 に答える
1
ulopcodesと呼ばれる拡張機能があり、PHPコードに公開する関数を介して独自のオペコードを発行できます。
例えば:
ulopcodes_emit(ZEND_ECHO, "Hello world!");
VMによって実行される現在のoparrayにその行を作成します。
この拡張機能は純粋に教育的なものであり、本番コードで使用することを目的としたものではありません。
(免責事項:私はulopcodesの作成者です)
于 2016-10-23T03:01:32.693 に答える