关于in_array() foreach array_search() 的性能对比
对于这几个函数,都可以用于判断某字符是否存在于数组中,群里有人在问,所以做了一个简单的测试。br / 请看代码。
对于这几个函数,都可以用于判断某字符是否存在于数组中,群里有人在问,所以做了一个简单的测试。
请看代码。
请看代码。
<?php /* *Powered by ciogao@gmail.com */ echo '结论:<br>in_array与array_search效率几乎相同,in_array仅返回真伪,array_search同时返回位置.<br>foreach性能最差<br>'; $runtime= new runtime; $runtime->start(); $a = 'k'; $b = array('a','b','c','d','e','f','g','h','i','j','k'); /* for ($i=0; $i < 100000; $i++) { var_dump(in_array($a, $b)); } */ /* for ($i=0; $i < 100000; $i++) { foreach ($b as $key => $value) { if ($a == $value) { //echo TRUE; continue; } } } */ /* for ($i=0; $i < 100000; $i++) { array_search($a, $b); } * */ $runtime->stop(); echo $_b; echo "页面执行时间: ".$runtime->spent()." 毫秒"; class runtime { var $StartTime = 0; var $StopTime = 0; function get_microtime() { list($usec, $sec) = explode(' ', microtime()); return ((float)$usec + (float)$sec); } function start() { $this->StartTime = $this->get_microtime(); } function stop() { $this->StopTime = $this->get_microtime(); } function spent() { return round(($this->StopTime - $this->StartTime) * 1000, 1); } } ?>
- 上一篇:PHP获取音乐文件播放总时间
- 下一篇:递归遍历目录 及 更改目录权限
精彩图集
精彩文章