PHP 5.3では、関数の名前を変更する方法や関数を "フック"する方法があります。
2004年から壊れている "APD"の中にrename_function()
があります。PHP 5.3でビルドしようとすると、次のエラーが表示されます。
'struct _zend_compiler_globals' has no member named 'extended_info'
これは修正するのが本当に簡単なエラーです。この行を変更するだけです。
GC(extended_info) = 1;
に
CG(compiler_options) |= ZEND_COMPILE_EXTENDED_INFO;
私はphp.iniを変更し、APDは私のphpinfo()に表示されます。しかし、私がrename_function()
を呼び出すと、PHPページは読み込まれず、/var/log/apache2/error.log
でセグメンテーション違反が発生します。
現代版のPHPで動作するようにAPDを修正する方法はありますか?または、関数の名前を変更する別の方法がありますか?なぜ地球上で重要な機能がPHPではないのですか? !?! (GottaはPythonを愛しています:)