在变量字符串中使用三元运算符

时间:2016-05-13 04:27:28

标签: php ternary-operator vbulletin

是否可以在变量中使用三元运算符来检查变量,我不确定这是否是正确的解释方法,所以让我告诉你我的意思。

$drc_embed_vine =  '<iframe src="https://vine.co/v/$2/embed/'.($vbulletin->options['drc_embed_vine_smpl']) ? simple : postcard.'" width="480" height="480" frameborder="0"></iframe>';

这个var只是检查设置是打开还是关闭,是一个返回1或零的布尔值

$vbulletin->options['drc_embed_vine_smpl']

但是那些无用的信息我只需要知道如何在这里使用三元运算符。

基本上我试图简化这个:

if ($vbulletin->options['drc_embed_vine_smpl']) {
    $drc_embed_vine =  '<iframe src="https://vine.co/v/$2/embed/simple" width="480" height="480" frameborder="0"></iframe>';
  } else {
    $drc_embed_vine =  '<iframe src="https://vine.co/v/$2/embed/postcard" width="480" height="480" frameborder="0"></iframe>';
  }

如果可能的话,我做错了什么?

2 个答案:

答案 0 :(得分:0)

$drc_embed_vine=($vbulletin->options['drc_embed_vine_smpl'])?'<iframe src="https://vine.co/v/$2/embed/simple" width="480" height="480" frameborder="0"></iframe>':'<iframe src="https://vine.co/v/$2/embed/postcard" width="480" height="480" frameborder="0"></iframe>';

或加一些小括号

$drc_embed_vine='<iframe src="https://vine.co/v/$2/embed/'.(($vbulletin->options['drc_embed_vine_smpl'])?'simple':'postcard')). width="480" height="480" frameborder="0">';

答案 1 :(得分:0)

你必须将这些内容包含在内。此外,您缺少简单明信片的报价:

$drc_embed_vine = '<iframe src="https://vine.co/v/$2/embed/'.(($vbulletin->options['drc_embed_vine_smpl']) ? "simple" : "postcard").'" width="480" height="480" frameborder="0"></iframe>';
                                                             ^                                               ^          ^         ^