Nasıl PHP Uyarılar kapatabilirim?

8 Cevap php
Notice: Constant DIR_FS_CATALOG already defined

Zaten display_errors in php.ini üzerinden yorumladı ettik, ama çalışmıyor.

Nasıl tarayıcılar çıktı böyle şeyler değil PHP yapabilirim?

UPDATE

I display_errors = Off oraya koydum ama yine de, bu bildirimleri rapor veriyor

Bu PHP 5.3 ile ilgili bir sorun var mı?

Raporlama sayıda Call Stack çok ..

8 Cevap

Sen display_errors 0 ayarlamak veya error_reporting() işlevini kullanabilirsiniz.

Ancak, uyarılar sinir bozucu (I olabilir partly sympathize) ama onlar bir amaca hizmet eder. Sen iki kez sabit tanımlama olmamalı, ikinci kez çalışmaz ve sürekli değişmeden kalır!

PHP belgelerine (error_reporting):

<?php
// Turn off all error reporting
error_reporting(0);
?>

Bu işlev için diğer ilginç seçenekler:

<?php

// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);

// Reporting E_NOTICE can be good too (to report uninitialized
// variables or catch variable name misspellings ...)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

// Report all errors except E_NOTICE
// This is the default value set in php.ini
error_reporting(E_ALL ^ E_NOTICE);

// Report all PHP errors (see changelog)
error_reporting(E_ALL);

// Report all PHP errors
error_reporting(-1);

// Same as error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);

?>

Komut satırı php için ayarlayın

error_reporting = E_ALL & ~E_NOTICE

in /etc/php5/cli/php.ini

komutu php yürütme ardından bildirimlerini ommits.

Eğer komut ini_set('display_errors',0); ayarlamak veya error_reporting() ile görüntülemek istiyorsun hangi hataları tanımlayabilirsiniz.

hatalara neden değil tarafından:

defined('DIR_FS_CATALOG') || define('DIR_FS_CATALOG', 'whatever');

Eğer gerçekten varsa, o zaman ^ E_NOTICE E_ALL için () error_reporting kullanarak hata bildirimini değiştirin.

Sabit zaten kullanılarak tanımlanmış olup olmadığını kontrol edebilirsiniz:

<?php
if (!defined('MYCONST'))
    define('MYCONST', 'Weeha!');
?>

Ben varsayılan olarak çünkü php.ini içinde display_errors dışında yorum çalışmaz inanıyorum. Bunun yerine 'Kapalı' olarak ayarlamanız gerekir.

Yapılandırma değişiklikleri uygulamak için Apache yeniden unutmayın.

Ayrıca burada değişen, zamanında display_errors ayarlayabilirsiniz ise ÖLÜMCÜL hataları etkilemez unutmayın.

Başkaları tarafından belirtildiği gibi, ideal gelişimi sırasında mümkün olan en yüksek düzeyde error_reporting ile çalışmalıdır ve display_errors sağladı. İlk işe başlamak, bu hatalar, uyarılar, bildirimler ve sıkı kodlama tavsiye can sıkıcı olsa da, tüm toplayın ve daha iyi bir kodlayıcı becoem sağlayacaktır.

I found this trick out recently. Whack an @ at the start of a line that may produce an warning/error.

Sihirli tarafından sanki onlar dissapear.