Php “isset(…)?:”方案中的正确语法
我有这条线Php “isset(…)?:”方案中的正确语法,php,Php,我有这条线 $logos = isset($instance['client_logo']) ? $instance['client_logo'] : ['']; 造成这个 分析错误:语法错误,在第18行的…/widget-home-clients.php中出现意外的“[” 需要如何更改它?使用此选项: $logos = (isset($instance['client_logo'])) ? $instance['client_logo'] : ''; 如果[]打算给您一个包含一个空字符串的
$logos = isset($instance['client_logo']) ? $instance['client_logo'] : [''];
造成这个
分析错误:语法错误,在第18行的…/widget-home-clients.php中出现意外的“[”
需要如何更改它?使用此选项:
$logos = (isset($instance['client_logo'])) ? $instance['client_logo'] : '';
如果[]打算给您一个包含一个空字符串的数组,您应该执行数组,因为您的PHP版本似乎还不允许使用这种简短的语法—它是在PHP5.4中引入的
如果您只想获得一个空字符串,只需将[]替换为将代码替换为以下代码即可
<?php
$logos = '';
if(isset($instance['client_logo']) && !empty($instance['client_logo']))
{
$logos= $instance['client_logo'];
}
?>
$logos=isset$instance['client_logo']?$instance['client_logo']:;为什么添加额外的?不是强制性的。我也可以在isset周围添加100次,但为什么?没有特殊原因。我的风格。