Использует ли «или» для нулевой проверки хорошую практику программирования PHP?

Когда я просматриваю исходный код проекта, в который я вношу свой вклад, я нахожу эту строку кода:

$id or $id = $this->id; 

Кажется, что он работает нормально, и это похоже на обходной путь из-за отсутствия оператора / обработчика null coalesce в PHP 5. ключевое слово «или» может выполнять такой код. Однако я задаюсь вопросом, является ли это хорошей практикой программирования в PHP. Как вы думаете? Это хорошая идея написать такой ($x or $x = $y) код?