考虑以下两个例子:
// explicitly setting the variable
$file = '/example.php';
if (file_exists($file)) {
include($file);
}
// setting the variable within a function call
if (file_exists($file = '/example.php')) {
include($file);
}
我测试了两者,他们似乎工作相同 尽管人物较少,但第二个看起来更简洁,更不容易出错。然而,我从来没有在实践中看到过这种情况,guides will usually advertise the first method。
是否有任何理由反对以这种方式设置变量?如果是这样,它们只是编码风格的性质,还是存在技术差异?我还没有解决其他任何差异吗?
答案 0 :(得分:1)
如果有的话,第二个是不必要的混淆。在上面的示例中,它没有太大的问题(可以从名称中推断出足够多),但请考虑这个问题:
update_user_status($admin = true)
作者是否是否设置了$admin
变量?或者他们只是做了一个拼写错误,它应该是一个相等的检查($admin == true
)?
第一种风格对此免疫。