2014-03-27 57 views
0

我正在客戶端服務器中安裝vtiger6。我沒有訪問php.ini文件。我曾試圖改變一些php.ini中throught我的index.php文件的一些設置工作正常如何在php文件中更改php.ini設置

ini_set('max_execution_time', 600); 
ini_set('log_errors','off'); 

,但我不能設置以下

ini_set('error_reporting','E_WARNING^E_NOTICE^E_DEPRECATED'); 
ini_set('allow_call_time_pass_reference','1'); 

,也是我需要改變以下我也不知道這是否正確

ini_set('max_file_uploads',300); 
ini_set('memory_limit','240M'); 
ini_set('max_input_time ',600); 

任何幫助將不勝感激。通過使用功能的error_reporting

+0

你是怎麼知道error_reporting設置不起作用的?你是否期望錯誤出現或消失? –

+0

@KraneBird在安裝vtiger時會顯示推薦的PHP設置和當前值。在其'error_reporting'現值中是'NOT RECOMMENDED' – Juice

回答

1

之所以使用error_reporting沒有就是你設置它的值設置爲以下字符串。 'E_WARNING^E_NOTICE^E_DEPRECATED'。但它不應該是一個字符串。 E_ *值是PHP的常量,應使用外報價,如:

ini_set('error_reporting',E_WARNING^E_NOTICE^E_DEPRECATED); 

而且你正在使用這些常量,這是不尋常之間的二進制XOR(^)。對於生產環境的建議值,建議單獨使用E_ALL進行調試。如果您想要除E_DEPRECATED之外的所有錯誤,您可以使用E_ALL & ~E_DEPRECATED

某些PHP設置不能用ini_set更改。您可以檢查PHP documentation哪些變量允許在文件級別進行設置。例如,max_file_uploads距離的php.ini僅多變(documentation

0

使用使用error_reporting代替像 的error_reporting的ini_set(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);在.htaccess文件

使用這一點,在根文件夾現有 php_value post_max_size要30M php_value upload_max_filesize的30M

應該工作

0

不是在php.ini中所有的配置可以改變在運行時與ini_set() 。您只能設置allow_call_time_pass_referencemax_file_uploadsmemory_limitmax_input_time在php.ini。

但是,如果你想顯示錯誤,你必須同時使用ini_set('display_errors')ERROR_REPORTING(E_ALL)

ini_set('display_errors', '1'); 
ERROR_REPORTING(E_ALL); 

參考文獻:

相關問題