所以,我想有更好的理解,当阵列未设置开关将如何行动,如果我应该使用isset()
和/或default:
行为的PHP开关阵列时没有设置
例如,目前我正在使用的代码:
$parameters['sort'] = NULL;
if(isset($parameters['sort'])) {
switch($parameters['sort'])
{
case 'relevance':
$parameters['sort'] = 'rating';
break;
case 'published':
$parameters['sort'] = 'updated';
break;
case 'views':
$parameters['sort'] = 'viewCount';
break;
}
}
注:我知道break;
没有右缩进(应该是如下),但它是我喜欢如何switch()
使用它。
注2:我只是回顾我的代码来修复bug和改进,同时使得如何东西要正确实现更好的感觉/使用
case 'relevance':
$parameters['sort'] = 'rating';
break;
所以我的问题是,我要补充的额外default
并删除if()
或继续使用if()
,因为它没有造成任何问题?使用两者都没有任何意义!
default:
$parameters['sort'] = '';
break;
确定下来,这就是我正在寻找的内容,并且具有正确的逻辑我错过了。非常感谢您分享您的知识 – Alex