私は、test_helpers PECL拡張を使用してsetcookieの実装を無効にしようとしています。phpunitを使ったカスタムsetcookieの実装
$username = 'test';
set_setcookie_overload(function() { error_log('setcookie called'); return FALSE; });
setcookie('username', $userName, time()+60*60*24*365, '/');
unset_setcookie_overload();
は、私はこのエラーを取得する: PHPの致命的なエラーは:未定義の関数set_setcookie_overload()
に呼び出し、私は拡張子が、ここでの例でうまく動作していることを確認:https://github.com/sebastianbergmann/php-test-helpers
感謝を。
更新:さらに詳しく説明すると、test_helpers拡張機能では、setcookieなどの組み込みPHP関数をオーバーライドできるように思えます。上記のリンクでは、set_exit_overload()を使用してexitメソッドをオーバーライドする例を示しました。 setcookie()でset_setcookie_overload()を使って同じことをしようとしています。
私はいったんsetcookie 'に関する何も表示されませんでした()'のリンクであなたが提供され、 'set_setcookie_overload'の検索は、この質問へのシングルリンクのみをもたらしました。 –
David、test_helpers拡張機能がsetcookieのような組み込みのPHP関数をオーバーライドできるように思えます。上記のリンクでは、set_exit_overloadを使用してexitメソッドをオーバーライドする例を示しました。 setcookie()でset_setcookie_overload()を使って同じことをしようとしています。申し訳ありませんが明確ではありません。 – pshah
ああ、私は今参照してください。私は例を見てクッキーを探しましたが、これはより一般的です。拡張機能がCLIまたはApache経由でどのように動作しているかをどのように確認しましたか?彼らは通常別のconfigsを持っています。対話的に 'php -a'を使って動作しますか? –