Subscribed unsubscribe Subscribe Subscribe

PHPにON ERROR GOTOが追加されました

先日は id:sotarokきれいなPHPをあげたんだけど、今度は

id:ockeghemさんが

PHPの@演算子って、BASICのon error resume nextをどうしても連想しますね。えーっと、PHPの5.4でon error ... も追加されるのでしたっけ\(^o^)/

http://wassr.jp/user/ockeghem/statuses/yicBUtcar3

とか余計なことを言ったので、ぼちぼち作った。

<?php
on error goto ERROR;
trigger_error("HAGE", E_USER_ERROR);
die;

ERROR:
echo "ouff\n";
?>

とかやると、set_error_handler() などを書かなくてもエラーハンドリングができるので、きっと便利だと思います!!

私はPHP書かないのでよくわかりません!!


本当に試したい頭のおかしな方へ

試すには bison やら re2c やらが必要です。

ビルド方法:

cvs -d:pserver:cvsread@cvs.php.net/repository co -r PHP_5_3 -d php-src-5.3 php-src
cd php-src
patch -p0 < php-5.3-on-error-goto.patch.diff
(cd Zend && php zend_vm_gen.php)
./buildconf
./configure ....
make