首页 > 解决方案 > php中的三元运算符设置变量错误,除非有括号

问题描述

三元运算符在 php 中的工作方式似乎有点奇怪,有人可以解释一下吗?

$z = 'testval';
$x = 'hello ' . isset($z) ? $z : ' notfound';

var_dump($x);  //testval

这会产生预期的结果:

$z = 'testval';
$x = 'hello ' . (isset($z) ? $z : ' notfound');

var_dump($x); //returns hello testval

标签: phpternary-operator

解决方案


推荐阅读