Php 将if/else转换为三值运算符

Php 将if/else转换为三值运算符,php,conditional-operator,Php,Conditional Operator,我刚刚开始学习PHP中的三元运算符,在转换以下内容时遇到了困难: <? if( $link['file'] ): ?> <?=$link['file'] ?> <? else: ?> <?=$link['link'] ?> <? endif ?> 到目前为止,我的尝试产生了一个错误: <? if( $link['file'] ) ? $link['file'] : $link['link']; ?> 任何

我刚刚开始学习PHP中的三元运算符,在转换以下内容时遇到了困难:

<? if( $link['file'] ): ?>
  <?=$link['file'] ?>
<? else: ?>
  <?=$link['link'] ?>
<? endif ?>

到目前为止,我的尝试产生了一个错误:

<? if( $link['file'] ) ? $link['file'] : $link['link']; ?>

任何关于如何使转换工作的指针,它必须是接近的吗


谢谢你用速记表:

?:

<?= $link['file'] ?: $link['link'] ?>

全文:

<?= $link['file'] ? $link['file'] : $link['link'] ?>

速记形式
?:

<?= $link['file'] ?: $link['link'] ?>

全文:

<?= $link['file'] ? $link['file'] : $link['link'] ?>


如果是PHP7,你也可以做一个,这更好,因为如果没有设置$link['file'],你就不会有通知。如果是PHP7,你也可以做一个,这更好,因为如果没有设置$link['file'],你就不会有通知。