Я имею тенденцию получать ошибки, такие как:
Неустранимая ошибка: не удается обновить get_raw_data_list () (ранее объявленный в /var/www/codes/handlers/make_a_thread/get_raw_data_list.php:7) в /var/www/codes/handlers/make_a_thread/get_raw_data_list.php в строке 19
как я могу избежать ошибки? Возможно ли создать предложение IF, чтобы проверить, объявлена ли функция до объявления?
Используйте require_once
или include_once
в отличие от include
или require
при включении файлов, содержащих ваши функции.
_once
близнецы _once
include
и require
заставят PHP проверить, был ли файл уже включен / необходим, и если да, не include
/ не require
его снова, тем самым предотвратите фатальные ошибки « не можете обновить x функции … ».
if(!function_exists("get_raw_data_list")) { ... define function here ... }
« function_exists » скажет вам, была ли функция уже объявлена. Хотя я подозреваю, что у вас есть проблема с включением файлов более одного раза. Когда вы включаете файл, вы используете require_once или include_once или просто требуете / включаете?
Если вы имеете дело с классами, method_exists()
может быть тем, что вы ищете:
if(!method_exists(__CLASS__, 'function_name')){ function function_name(){ } }
Это проверит текущий класс, чтобы функция function_name
не существовала, прежде чем пытаться объявить ее