天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP 函數(shù)執(zhí)行效率的小比較

就是把原來的數(shù)組中的數(shù)都“拆”成“單”位的。
下面是自己寫的一個函數(shù):
復制代碼 代碼如下:
function splitStrToArray_mine($array)
{
$new_array = array();
foreach($array as $value)
{
$value = (string)$value;
$len = strlen($value);
for($i = 0; $i < $len; $i ++){
array_push($new_array, $value{$i});
}
}
return $new_array;
}

測試了一下,還是可以執(zhí)行的,如下調(diào)用:
復制代碼 代碼如下:
//測試數(shù)組
$data = array(12, 43, 87, 45, 98, 74, 83, 67, 12);
var_dump(splitStrToArray_mine($data));

輸出結果為:
復制代碼 代碼如下:
array(18) {
[0]=>
string(1) "1"
[1]=>
string(1) "2"
[2]=>
string(1) "4"
[3]=>
string(1) "3"
[4]=>
string(1) "8"
[5]=>
string(1) "7"
[6]=>
string(1) "4"
[7]=>
string(1) "5"
[8]=>
string(1) "9"
[9]=>
string(1) "8"
[10]=>
string(1) "7"
[11]=>
string(1) "4"
[12]=>
string(1) "8"
[13]=>
string(1) "3"
[14]=>
string(1) "6"
[15]=>
string(1) "7"
[16]=>
string(1) "1"
[17]=>
string(1) "2"
}

雖然執(zhí)行的不錯,但是看看標準答案就會讓你大吃一驚的,函數(shù)中就一句話,如下:
復制代碼 代碼如下:
//標準函數(shù)
function splitStrToArray($array)
{
return str_split(implode("", $array));
}

于是寫了腳本來測試自己的和標準的函數(shù)的運行效率差距,里面有一個 microtime_float() 函數(shù)用來提供精確時間的支持:
復制代碼 代碼如下:
//測量時間的函數(shù)
function microtime_float()
{
list($usec, $sec) = explode(" ", microtime());
return ((float)$usec + (float)$sec);
}
//自定義函數(shù)
function splitStrToArray_mine($array)
{
$new_array = array();
foreach($array as $value)
{
$value = (string)$value;
$len = strlen($value);
for($i = 0; $i < $len; $i ++){
array_push($new_array, $value{$i});
}
}
return $new_array;
}
//標準函數(shù)
function splitStrToArray($array)
{
return str_split(implode("", $array));
}
//測試數(shù)組
$data = array(12, 43, 87, 45, 98, 74, 83, 67, 12);
//開始測試
$mine_start = microtime_float();
splitStrToArray_mine($data);
$mine_end = microtime_float();
//標準函數(shù)調(diào)用
$sta_start = microtime_float();
splitStrToArray($data);
$sta_end = microtime_float();
echo "自己的函數(shù)調(diào)用運行時間為:" . (float)($mine_end - $mine_start) . " S <br />";
echo "標準的函數(shù)調(diào)用運行時間為:" . (float)($sta_end - $sta_start) . " S <br />";
$multiple = (int)((float)($mine_end - $mine_start) / (float)($sta_end - $sta_start));
echo "前者是后者的:" . $multiple . " 倍!";

來看看輸出結果:
自己的函數(shù)調(diào)用運行時間為:9.3936920166E-005 S
標準的函數(shù)調(diào)用運行時間為:2.69412994385E-005 S
前者是后者的:3 倍!
多次刷新頁面的話,可以發(fā)現(xiàn)標準函數(shù)的執(zhí)行效率基本上是自己的函數(shù)的 3 倍!當然,標準的函數(shù)中使用了 php 的內(nèi)置函數(shù): str_split(),implode(),所以要比自己寫函數(shù)快得多,對 str_split() 函數(shù)沒有印象?來看看手冊解釋:
str_split -- Convert a string to an array(將一個字符串轉(zhuǎn)換成數(shù)組)
函數(shù)描述:
array str_split ( string string [, int split_length] )
復制代碼 代碼如下:
Converts a string to an array. If the optional split_length parameter is specified, the returned array will be broken down into chunks with each being split_length in length, otherwise each chunk will be one character in length.
FALSE is returned if split_length is less than 1. If the split_length length exceeds the length of string, the entire string is returned as the first (and only) array element.

例 1. Example uses of str_split()
復制代碼 代碼如下:
<?php
$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
print_r($arr2);
?>

Output may look like:
復制代碼 代碼如下:
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
)
Array
(
[0] => Hel
[1] => lo
[2] => Fri
[3] => end
)

php技術PHP 函數(shù)執(zhí)行效率的小比較,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产精品九九久久 | 乳色吐息未增删樱花ED在线观看 | 久久久久九九 | 伊人久久影院大香线蕉 | 看免费人成va视频全 | 午夜婷婷精品午夜无码A片影院 | 越南女子杂交内射BBWXZ | 德国xxxx| 久草在线在线精品观看 | 99久久99久久久精品齐齐鬼色 | 胖老太与人牲交BBWBBW高潮 | 无止侵犯高H1V3无止侵犯 | 十分钟在线观看免费视频高清WWW | 岛国在线永久免费视频 | 亚洲AV久久无码精品九号 | 欧美区 bt| 亚洲伦理精品久久 | 国产曰批试看免费视频播放免费 | 麻豆区蜜芽区 | 国产超碰AV人人做人人爽 | 老女老肥熟国产在线视频 | 亚洲乱码国产乱码精品精98 | 茎身铃口调教 | 99久久国产视频 | 日日噜噜噜噜夜夜爽亚洲精品 | 亚洲国产cao| 最近免费中文字幕大全免费 | 日本无翼恶漫画大全优优漫画 | 大地影院日本韩国电影免费观看 | 2021国产在线视频 | 年轻的母亲4线在线观看完整 | 一本到2019线观看 | 国产亚洲精品视频在线网 | 光溜溜的美女直播软件 | 久久精品黄AA片一区二区三区 | 色丁香婷婷综合缴情综 | 国精产品一区一区三区有限 | 四虎国产精品永久免费入口 | 大学生第一次破女在线观看 | 最新果冻传媒在线观看免费版 | 久久777国产线看观看精品卜 |