2015-11-03 43 views

回答

2

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

string ini_set (string $varname , string $newvalue) 

所以,你必须使用一个字符串NEWVALUE

如:

<?php 
echo ini_get('display_errors'); 

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

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

因为改变前的ini_get()的默认值是'string(1)',所以我认为你的回答比较好。即使http://php.net/manual/en/errorfunc.configuration.php的默认值为'0'或'1'! – evilReiko

0

它必须与您在php.ini文件中设置的相同。从技术文档:

string ini_set (string $varname , string $newvalue)

因此,这意味着你可以使用任何字符串$newvalue,这将是最适当方式。但通常我将它设置为(int) 1

3

在php.net的语法如下像这样:

string ini_set(string $ varname,string $ newvalue)

所有参数应该是string。在php.ini文件中显示为OnOff的所有布尔值。下面的解决方案应该是最合适的解决方案:

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

上,您可以找到以下部分的配置文件的文档:

布尔值可以设置为:
为true, ,是 假,关,没有,没有

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

On ini_get返回值是一个字符串。该文档说:

off的布尔ini值将返回为空字符串或“0”,而on的布尔值ini值将返回为“1”。该函数还可以返回INI值的文字字符串。

ini_get的返回值和ini_set的值必须是字符串!

+0

在configuration.file.php中,我发现奇怪的是1和0没有提到!也许1和0在php.ini内无效! – evilReiko

+0

这些值也适用,但原始值是来自文档的这些值。 –

+0

也很奇怪,使用'ini_get('display_errors')'时的默认值是字符串'0'或字符串'1'! – evilReiko

相关问题