use*_*333 12 php arrays array-unique
我怀疑使用什么:
foreach(){
// .....
if(!in_array($view, $this->_views[$condition]))
array_push($this->_views[$condition], $view);
// ....
}
Run Code Online (Sandbox Code Playgroud)
要么
foreach(){
// .....
array_push($this->_views[$condition], $view);
// ....
}
$this->_views[$condition] = array_unique($this->_views[$condition]);
Run Code Online (Sandbox Code Playgroud)
UPDATE
目标是获得一系列独特的价值观.这可以通过每次检查值是否已存在in_array或每次添加所有值或最终使用时来完成array_unique.那么这两种方式之间有什么重大区别吗?
p91*_*aul 10
我认为第二种方法会更有效率.实际上,array_unique对数组进行排序然后扫描它.
排序以N log N步骤完成,然后扫描需要N步.
第一种方法需要N ^ 2步(foreach元素扫描所有N个前面的元素).在大阵列上,存在很大的差异.
| 归档时间: |
|
| 查看次数: |
2340 次 |
| 最近记录: |