在PHP中,“ in_array”与“ array_values”之间的性能差异是什么?

时间:2018-12-17 19:40:36

标签: php performance

我试图找出哪种方法可以达到更好的效果,例如更快,更少的内存使用。

$resp = [];
foreach($data as $val){
  $resp[$val] = $val;
}

return array_values($resp);

vs

$resp = [];
foreach($data as $val){
  if(!\in_array($val, $resp, false)){
      $resp[] = $val;
  }
}

return $resp;

我当时认为第一个选项将使用更多的内存,因为它将值作为键,

但是第二个选项将使用更多的cpu,因为它必须检查in_array以获取不断增长的数组。

有什么想法吗?

结果应该是

[
  0 => 'no dup data',
  1 => 'no dup data 1',
  ...
]

0 个答案:

没有答案