У меня есть этот код:
public function __construct($Directory = null) { if ($Directory === null) { trigger_error("Directory Must Be Set!", E_USER_ERROR); } if (isset($Directory)) { if (!empty(trim($Directory))) { //Error Line echo "test"; } } }
(Эхо для моих целей отладки.)
Я возвращаюсь с фатальной ошибкой:
Невозможно использовать возвращаемое значение функции в контексте записи
Согласно шторму PHP это возвращает:
Ожидаемая переменная
Но используя код непосредственно из этого вопроса:
Белые пространства, отбрасывающие проверку формы HTML
Это правильный синтаксис, поскольку я использовал его в прошлом … Но в этой ситуации это вызывает ошибку. Почему это?
Из документов PHP по empty
функции:
Примечание. До PHP 5.5 пустая () поддерживает только переменные; все остальное приведет к ошибке синтаксического анализа. Другими словами, следующее не будет работать: empty (trim ($ name)). Вместо этого используйте trim ($ name) == false.
Поэтому вам придется разделить эту строку на следующее:
$trimDir = trim($Directory); if(!empty($trimDir))