2015-11-03 4 views
5

werde ich „display_errors“ als Beispiel:Was ist der richtige Wertetyp des neuen Werts bei Verwendung von ini_set()?

ini_set('display_errors', 1);// int 
ini_set('display_errors', '1');// string 
ini_set('display_errors', 'on');// string 
ini_set('display_errors', true);// boolean 

Ich weiß, dass alle oben wird die gleiche Arbeit. Ich bin nur neugierig zu wissen, was ist die am besten zu verwenden, wenn jemand weiß.

Antwort

2

Bezug: http://php.net/manual/en/function.ini-set.php

string ini_set (string $varname , string $newvalue) 

So haben Sie für newValue eine Zeichenfolge verwenden

zB:

<?php 
echo ini_get('display_errors'); 

if (!ini_get('display_errors')) { 
    ini_set('display_errors', '1'); 
} 

echo ini_get('display_errors'); 
?> 
+0

Da der Standardwert von ini_get() vor dem Ändern von irgendetwas 'string (1)' ist, denke ich, dass deine Antwort besser ist. Sogar http://php.net/manual/en/errorfunc.configuration.php hat Standardwerte auf '0' oder '1' !! – evilReiko

0

Es muss dasselbe sein, wie Sie es in der Datei php.ini eingestellt haben. Aus der Dokumentation:

string ini_set (string $varname , string $newvalue)

So bedeutet es Ihnen eine beliebige Zeichenfolge für $newvalue verwenden können und dass eigensten Weg sein wird. Aber in der Regel stelle ich es an (int) 1

3

Auf php.net die Syntax sieht so:

String ini_set (string $ varname, string $ newvalue)

Alle Parameter sollte ein string sein. In der Datei php.ini werden alle booleschen Werte als On oder Off angezeigt. Die folgende Lösung soll die am besten geeignete Lösung sein:

ini_set('display_errors', 'On'); 
ini_set('display_errors', 'Off'); 

Auf der Dokumentation der Konfigurationsdatei Sie folgende finden können:

Boolesche Werte können eingestellt werden entweder:
wahr, auf ja, oder falsch, aus, nein, kein

http://php.net/manual/en/configuration.file.php

Bei ini_get ist der Rückgabewert eine Zeichenkette. Die Dokumentation sagt:

Ein boolean ini Wert von off als eine leere Zeichenfolge oder „0“ zurückgegeben werden, während ein boolean ini Wert auf als „1“ zurückgegeben. Die Funktion kann auch die literale Zeichenfolge des INI-Werts zurückgeben.

Der Rückgabewert von ini_get und der Wert für ini_set haben eine Zeichenfolge sein!

+0

In configuration.file.php finde ich es seltsam, dass 1 und 0 nicht erwähnt werden! Vielleicht sind 1 und 0 in der php.ini ungültig? – evilReiko

+0

Diese Werte funktionieren auch, aber die ursprünglichen Werte stammen aus der Dokumentation. –

+0

auch seltsam, die Standardwerte bei Verwendung von 'ini_get ('display_errors')' sind String '0' oder String '1'! – evilReiko

Verwandte Themen