PHP允许在使用or命令赋值变量时产生错误


php acceptable to generate errors when using the or command to assign variables?

在PHP中我有以下代码:

$my_var = $_GET['my_var'] or $my_var = 'empty';

它给了我一个默认值,如果$_GET['my_var']没有设置,它就可以正常工作。虽然这确实像我想要的那样工作,但它仍然在错误日志中生成一个未定义的变量警告。这是可以接受的吗?还是我应该努力不让任何东西进入错误日志?如果有,我能抑制这个错误吗?

过去我使用过isset()empty()这样的函数,但我喜欢这段代码与python的try的接近性。

设置$my_var的更好方法是:

$my_var = isset($_GET['my_var']) ? $_GET['my_var'] : "empty";

你肯定不想用不必要的消息污染你的错误日志。这使得很难找到您真正想要调试的错误,并且可能使解释器比需要的工作更辛苦。