我不确定这是否可能,但我正在寻找一种方法来分配变量,同时在if (...) { }
语句中进行检查。基本上是这个... ...
$var = somefunction();
if ($var == 10) {
#do something
}
进入类似的事情
if(($var = somefunction()) == 10) {
#do something
}
正如我所说,我不确定这是否可行,但只是想知道是否有办法保存首先分配变量。我想要这个,因为我有一个输出数组或假的函数。
谢谢:)
答案 0 :(得分:3)
这也有效:
if(($var = somefunction()) == 10) {
#do something
}
但您提出的第一种方式是简单,清晰和可读,除了您需要使用==
或===
而不是=
进行相等检查:< / p>
$var = somefunction();
if ($var == 10) {
#do something
}
为什么不用它?
答案 1 :(得分:1)
我相信这样的事情会起作用:
if(($var = somefunction()) == 10) {
//Do something
}
基本上它是一个评估问题。首先评估括号,这就是为什么它首先执行$var = somefunction()
,然后检查返回值($ val的值)对10。
答案 2 :(得分:1)
如果您不需要该变量供以后使用,那么
if (somefunction() == 10) {
//do something
}
也足够了。
答案 3 :(得分:0)
试试这个
$var ;
if (true) {
$var= somefunction();
if($var==10) {
# Handler
}
}