Вы можете сделать это, но это не будет иметь те же результаты, как и в JavaScript.
В Javascript, y || z
возвращает значение y
, если оно правдивое, в противном случае оно возвращает z
. Это полезно при инициализации переменных, поскольку позволяет назначить y
, но вернуться к z
, если y
не установлен.
В PHP ||
является булевым оператором, он всегда возвращает true
или false
. Таким образом, $y || $z
не вернет значения переменных, он просто вернет, является ли любой из них правдивым.
Чтобы получить эквивалентный результат, вы должны использовать:
$x = $y ? $y : $z;
Начиная с PHP 5.3, это может быть сокращено до:
$x = $y ?: $z;
Попробуйте и посмотрите. –
, мы должны предположить, что вы точно знаете, что делает код JS, но это не обязательно. Итак ... прежде всего: что вы хотите сделать? –
'?:' - нет, это ответ. Я уверен, что это было задано много раз и раньше. – deceze