我今天遇到了一些有趣的代码.我试图找出这是PHP的一个功能,还是我错过了什么,但无法在Google上找到任何内容.可能是因为我不知道它的名字.
码
if($logo = \Repositories\Logo::getLogoData($id)){
$logo_href = $logo->link;
}
Run Code Online (Sandbox Code Playgroud)
该变量$logo未在其他任何位置设置.看起来这个if语句中的表达式正在检查该类方法是否返回任何内容并同时设置$logo要在语句中使用的变量.
这是真的?如果是这样,世界上有什么叫做!?!
Mik*_*ant 23
您可以在条件中进行类似的任务.逻辑上发生的是,该值被赋值$logo,然后$logo评估它是否真实.如果它是真实的,条件中的代码执行.
在循环访问数据库结果集的情况下,您经常会看到这种分配/评估,但通常我建议在读取g代码时为了清楚起见,应避免在这种常见用例之外.