как изменить настройку php.ini в файле php

Я устанавливаю vtiger6 на клиентский сервер. У меня нет доступа к файлу php.ini. Я попытался изменить некоторые настройки php.ini в файле index.php, некоторые настройки работают нормально.

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);

Любая помощь будет оценена.


person Juice    schedule 27.03.2014    source источник
comment
Как вы узнали, что настройка error_reporting не работает? вы ожидали, что ошибки появятся или исчезнут?   -  person Abed Hawa    schedule 27.03.2014
comment
@KraneBird при установке vtiger покажет рекомендуемые настройки PHP и текущую стоимость. в его error_reporting текущей стоимости NOT RECOMMENDED   -  person Juice    schedule 27.03.2014


Ответы (4)


Причина, по которой 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, какие переменные позволяют устанавливать на уровне файла. Например, max_file_uploads можно изменить только из php.ini (документация)

person mesutozer    schedule 27.03.2014

установить error_reporting с помощью функции error_reporting. пройти через руководство php.net

http://www.php.net/manual/en/function.error-reporting.php

для allow_call_time_pass_reference Запись может быть установлена ​​в php.ini, httpd.conf

вы можете создать файл php.ini в своем каталоге на сервере и сохранить там настройки.

person Razor Jack    schedule 27.03.2014

Не всю конфигурацию в php.ini можно изменить во время выполнения с помощью ini_set(). Вы можете установить только allow_call_time_pass_reference, max_file_uploads, memory_limit и max_input_time в файле php.ini.

Но если вы хотите показать ошибку, вы должны использовать как ini_set('display_errors'), так и ERROR_REPORTING(E_ALL)

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

Использованная литература:

person fian    schedule 27.03.2014

использовать error_reporting вместо ini_set, например error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

используйте это в своем файле .htaccess, который существует в корневой папке php_value post_max_size 30M php_value upload_max_filesize 30M

это должно работать

person Sumit    schedule 27.03.2014