首页 > 解决方案 > 将 if/else 转换为三元运算符

问题描述

我刚刚开始掌握 PHP 中的三元运算符,并且在转换以下内容时遇到了麻烦:

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

到目前为止,我的尝试会产生错误:

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

任何指针如何使这种转换工作,它必须是关闭的?

谢谢

标签: phpconditional-operator

解决方案


用简写形式?:

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

完整形式:

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

推荐阅读