繁体   English   中英

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

[英]Use a ternary operator in a variables string

是否可以在变量内使用三元运算符来检查变量,我不确定这是否是正确的解释方式,所以让我向您展示我的意思。

$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>';

该变量只是检查设置是打开还是关闭,并且是返回1或0的布尔值。

$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>';
  }

如果可能,我在做什么错?

$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">';

您必须将那些括在括号内。 此外,您缺少简单和明信片的引号:

$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>';
                                                             ^                                               ^          ^         ^

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM