我知道在使用这样的运算符时可以回显值并执行函数:
function echoTadaa() {
echo "taTaaa";
}
echo true && echoTadaa();
结果是: taTaaa
但是在使用运算符时,是否有可能将字符串(任意)值保存到变量中?
$var = true && 'tadaaa';
var_dump($var);
结果是: bool(true)
预期结果是:字符串(6)" taTaaa"
答案 0 :(得分:1)
function echoTadaa() {
return "taTaaa";
}
$str = true . echoTadaa();
返回" 1taTaaa"其中1 =真
答案 1 :(得分:1)
我真的不知道你为什么要这样,但你可以这样做:
if(true && $a= "hello"){
}
var_dump($a); //string(5) "hello"
如果符合条件,则将进行分配。 但是在那种情况下你可以在if条件下分配$ var。
或者你可以使用三元运算符:
$a = true ? "yes" : "no";
这是一个笑话。我想在不使用三元运算符的情况下编写三元运算符。
嗯,你不能做到这一点:
$a = true && "something";
echo $a;
因为评估将始终返回bool值,因此var $ a将包含bool,而不是您的字符串。
你可以做一些混淆,使代码看起来像这样工作 像这里解释:https://www.thc.org/root/phun/unmaintain.html