我有这个三元操作:
$test == 'a test' ? echo 'test is not empty' : '';
我想知道为什么回声不起作用?
这是一个PHP代码。
答案 0 :(得分:3)
它不起作用,因为这是无效的语法。如果需要,在脚本的顶部添加它,PHP会告诉你:
ini_set('display_errors', '1');
error_reporting(E_ALL);
更新:等等,添加这个不应该是必需的,因为它是一个解析器错误,因此无论如何脚本都不会到达那里。相反,如有必要,请在display_errors
中将On
设置为php.ini
,然后重新启动服务器。的 /更新强>
应该这样写:
echo $test == 'a test' ? 'test is not empty' : '';
或更好,因为没有任何回应没有多大意义:
if($test == 'a test') echo 'test is not empty';
答案 1 :(得分:1)
echo
是一个声明(好吧,PHP称之为“语言结构”)。语句不能在表达式中使用;这就是语句与表达的区别。