我想检查一下PHP多个条件的构造是否正确。
if ($role == 'admin') :
$active_admin = 'active';
elseif ($role == 'mods') :
$active_mods = 'active';
elseif ($role == 'writer') :
$active_writer = 'active';
endif;
但是,我注意到类属性中有一些未定义的变量。我想知道的是,“我是否需要创建额外的条件以避免获得未定义的变量?”
因为在这个语句中,admin被初始化为active角色,然后剩下的被闲置。在我的消息来源中查看了这个通知之后,我得到了这个通知。
<br />
<b>Notice</b>: Undefined variable: active_admin in...
谢谢你的建议或意见。非常感谢。
发布于 2013-12-02 22:29:26
您可以在命令的前缀加上@,以抑制该消息。尽管在生产环境中应该关闭通知。初始化变量也将消除通知,但是我相信您将在稍后的行中得到通知。
示例:
$active_admin = '';
$active_writer = '';
$active_mods = '';
等。
这实现了与您的代码相同的功能:
$role = 'admin';
${"active_$role"} = 'active';
echo $active_admin;
https://stackoverflow.com/questions/20344202
复制相似问题