使用下面的字節(jié)寫的函數(shù)可以解決

從數(shù)據(jù) " /> 青春草国产成人精品久久,免费国产福利,伊人22222

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

PHP將兩個(gè)關(guān)聯(lián)數(shù)組合并函數(shù)提高函數(shù)效率

在foreach中循環(huán)查詢數(shù)據(jù)代碼量比較少,但是性能比較低,好點(diǎn)的解決辦法是將id收集起來,用in一次性查詢,但是這引發(fā)了數(shù)據(jù)結(jié)構(gòu)不是我們用php自帶的函數(shù)可以合并的,今天測試了一下:

使用下面的字節(jié)寫的函數(shù)可以解決

從數(shù)據(jù)庫中取出來的數(shù)據(jù)總是或多或少不符合我們心目中的數(shù)據(jù)結(jié)構(gòu),類似于下面的倆個(gè)數(shù)組,要形成SQL中類似于left join后兩個(gè)數(shù)組合并:
復(fù)制代碼 代碼如下:
$test1 = Array(
0 => Array(
'id' => 9478137,
'create_time' => 1394760724
),
1 => Array(
'id' => 9478138,
'create_time' => 1394760725
),
2 => Array(
'id' => 9478138,
'create_time' => 1394760725
)
);
$test2 = array(
0 => array(
'id' => 9478137,
'message' => 'love you'
),
1 => array(
'id' => 9478138,
'message' => 'miss you'
)
);

如果要將這兩個(gè)數(shù)組,類似于sql中的left join 關(guān)聯(lián)起來我們用什么函數(shù)呢?額我沒有找見就自己寫了
剛開始的時(shí)候,用的是嵌套循環(huán):效率低下
復(fù)制代碼 代碼如下:
function _mergerArray($array1, $array2, $field1, $field2 = '') {
$ret = array();
foreach($array1 as $key1 => $value1 ) {
foreach ($array2 as $key2 => $value2) {
if($value1[$field1] == $value2[$field2]) {
$ret[$key1] = array_merge($value1, $value2);
}
}
}
return $ret;
}

改進(jìn)后的辦法,使用數(shù)組下標(biāo),使用兩次循環(huán):形成類似于left join的方式
復(fù)制代碼 代碼如下:
$test1 = Array(
0 => Array(
'id' => 9478137,
'create_time' => 1394760724
),
1 => Array(
'id' => 9478138,
'create_time' => 1394760725
),
2 => Array(
'id' => 9478138,
'create_time' => 1394760725
)
);
$test2 = array(
0 => array(
'id' => 9478137,
'message' => 'love you'
),
1 => array(
'id' => 9478138,
'message' => 'miss you'
)
);

function _mergerArray($array1, $array2, $field1, $field2 = '') {
$ret = array();

//使用數(shù)組下標(biāo)的辦法
foreach ($array2 as $key => $value) {
$array3[$value[$field1]] = $value;
}
foreach ($array1 as $key => $value) {
$ret[] = array_merge($array3[$value[$field1]], $value);
}
return $ret;
}
$ret = _mergerArray($test1, $test2, 'id', 'id');
print_r($ret);exit;

打印出來結(jié)果如下:
復(fù)制代碼 代碼如下:
Array
(
[0] => Array
(
[id] => 9478137
[message] => love you
[create_time] => 1394760724
)
[1] => Array
(
[id] => 9478138
[message] => miss you
[create_time] => 1394760725
)
[2] => Array
(
[id] => 9478138
[message] => miss you
[create_time] => 1394760725
)
)

相當(dāng)于left join了吧?

php技術(shù)PHP將兩個(gè)關(guān)聯(lián)數(shù)組合并函數(shù)提高函數(shù)效率,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 毛片手机在线观看 | 久久婷婷色香五月综合激情 | 啪啪激情婷婷久久婷婷色五月 | 樱花动漫成人隐藏入口 | 无人视频在线观看免费播放影院 | 99热国产这里只有精品9九 | 欧美残忍xxxx极端 | 麻豆精品人妻一区二区三区蜜桃 | 白丝美女被狂躁免费漫画 | 国产午夜不卡在线观看视频666 | 红桃传媒少妇人妻网站无码抽插 | 国产午夜精品久久理论片小说 | 日日噜噜噜噜夜夜爽亚洲精品 | av影音先锋影院男人站 | xart欧美一区在线播放 | 十八禁啪啦啪漫画 | 亚洲精品久久99蜜芽尤物TV | 亚洲色欲国产免费视频 | 俄罗斯17vidio | 亚洲国产精品无码中文字幕 | 午夜向日葵视频在线观看 | 日本激情在线 | 国产人妻人伦精品59HHH | yellow在线观看免费观看大全 | 91精品福利一区二区 | adc影院欢迎您大驾光临入口 | 亚洲第一综合天堂另类专 | 精品含羞草免费视频观看 | 国产午夜精品久久理论片小说 | 综合激情区视频一区视频二区 | 两个女人互添下身高潮自视频 | 久久香蕉电影 | 可以看的黄页的网站 | 久久国产主播福利在线 | 91次元黄色观看 | 2020精品极品国产色在线 | 国产这里有精品 | 女人和男人插曲视频大全 | 精品动漫国产亚洲AV在线观看 | 亚洲国产中文字幕在线视频 | 国产剧情麻豆mv |