プロが教える店舗&オフィスのセキュリティ対策術

ブラウザにPHPエラーを表示させるには
PHPをおいているサーバのPHP設定ファイルで

php.ini
display_errors=on

とすればできますが

php.ini
display_errors=off

としていても

php.ini
display_errors=on

の時と同じようにブラウザにエラーを表示させる方法は有るのでしょうか?

A 回答 (4件)

PHPの putenv 関数を使用してスクリプトから環境変数を設定することが可能です。



ですので以下のコードをプログラムの冒頭に記述しておけばそのスクリプトでのエラーが表示されるようになります。

putenv("display_errors=on");


ただし、設定によっては変更できない場合も存在します。

詳しくは参考URLを参照してください。

参考URL:http://jp.php.net/manual/ja/function.putenv.php
    • good
    • 0
この回答へのお礼

ありがとうございます

そのスクリプトにおいてのみ有効にする方法は無いのでしょうか?

error_reporting(E_ALL);

を冒頭につけてもだめでした
多分このための関数ではないからでしょう

環境変数を変えると他のユーザに影響を与えてしまうので避けたいのですが・・・・

お礼日時:2005/12/04 15:20

ini_set("display_errors", 1);


で設定できますよ。
    • good
    • 0
この回答へのお礼

ありがとうございます
やはりだめでした
FC4独自の問題かもしれません
ちなみに
php.iniで
safe_mode=off
になっているので多分セーフモードではないと思います

お礼日時:2005/12/05 16:42

セーフモードでは、変更出来る環境変数に制限があるようですよ。


http://www.php.net/manual/ja/features.safe-mode. …
    • good
    • 0
この回答へのお礼

ありがとうございます
たぶんセーブモードではないと思います

お礼日時:2005/12/05 16:19

#1です。


putenv 関数で環境変数が変更されるのはそのスクリプトのみですのでご安心ください。

参考URL先にも
>リクエスト終了時、環境変数は元の状態に戻されます。
と記述されています。
    • good
    • 0
この回答へのお礼

ありがとうございます

<?php
putenv("display_errors=on");
echo'<pre>';
echo date('Y/m/d-H:i:s'),"\n";
*//故意のエラー
echo'</pre>';
?>

でやってみたのですができない場合のようです

FedoraCore4のデフォルトフルインストールのサーバです

お礼日時:2005/12/04 16:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!