9

Zend Framework 2 でエラーが発生するたびに、500 Internal Server Error が表示され、Zend Server エラー ログを検索する必要があります。これを config/autoload/local.php ファイルに入れてみましたが、うまくいきません:

return array(
    'phpSettings' => array(
        'display_startup_errors' => true,
        'display_errors' => true,
        ),
);
4

2 に答える 2

8

zf2(afaik)にはそれに対するネイティブサポートはありません。それらをphp.ini自体に設定するか、index.phpに設定する必要があります

<?php
error_reporting(E_ALL);
ini_set('display_errors', true);

本当にそれらを構成設定として提供できるようにしたい場合は、持っているものを保持し、モジュールのブートストラップでそれを行い、構成からそれらを取得し、各キーと値のペアで ini_set() を呼び出すことができます

public function onBootstrap(EventInterface $e) {
    $app = $e->getApplication();
    $sm = $app->getServiceManager();
    $config = $sm->get('Config');
    $phpSettings = isset($config['phpSettings']) ? $config['phpSettings'] : array();
    if(!empty($phpSettings)) {
        foreach($phpSettings as $key => $value) {
            ini_set($key, $value);
        }
    }
}

編集: @akond がコメントで正しく指摘しているようにlocal.php、より良い解決策である ini_set 行を追加することができます。

于 2013-03-10T10:34:17.657 に答える
6

ZF2 アプリで phpSettings を簡単に構成するには、 DluPhpSettings の使用を検討する必要があります

このモジュールを使用すると、使用している各環境の設定を構成できます。

/* Local application configuration in /config/autoload/phpsettings.local.php */
<?php
return array(
    'phpSettings'   => array(
        'display_startup_errors'        => false,
        'display_errors'                => false,
        'max_execution_time'            => 60,
        'date.timezone'                 => 'Europe/Prague',
        'mbstring.internal_encoding'    => 'UTF-8',
    ),
);

詳細については、このブログ投稿もご覧ください。

于 2013-03-10T22:45:13.547 に答える