【发布时间】:2016-11-30 03:26:36
【问题描述】:
我想知道,在性能方面......
如果我有一个包含 30 个元素的 $_REQUEST 数组,并且我需要使用函数抓取元素以将它们设置为新数组,那么使用多个 ISSET 与 FOREACH+SWITCH 什么时候会更好:
例子:
- 方法 1 = 15 个元素
- 方法 2 = 10 个元素
- 方法 3 = 2 个元素
方法一:
foreach($_REQUEST['data'] as $key => $val)
{
switch($key){
case 'blah':
$newarray['blah'] = $val;
break;
.....
case 'blah2':
.....
case 'blah3':
.....
case 'blah4':
.....
}
}
方法三:
if(isset($_REQUEST['data']['blah'])) $newarray['blah'] = $_REQUEST['data']['blah'];
if(isset($_REQUEST['data']['blah2'])) $newarray['blah2'] = $_REQUEST['data']['blah2'];
我认为对于方法 3,使用 if(isset) 会更好,但我不确定,什么时候最好使用一个而不是另一个?
【问题讨论】:
-
我会说 foreach + if-else。更好。
-
方法2怎么了?
标签: php performance if-statement foreach switch-statement