Подтвердить что ты не робот

Невозможно использовать возвращаемое значение функции в контексте записи?

У меня есть этот код:

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-формы

Это правильный синтаксис, поскольку я использовал его в прошлом... Но в этой ситуации это вызывает ошибку. Почему это?

4b9b3361

Ответ 1

Из документов PHP в функции empty:

Примечание: До PHP 5.5 пустая() поддерживает только переменные; все остальное приведет к ошибке синтаксического анализа. Другими словами, следующее не будет работать: empty (trim ($ name)). Вместо этого используйте trim ($ name) == false.

Итак, вам придется разбить эту строку на следующее:

$trimDir = trim($Directory);
if(!empty($trimDir))