php 代碼優(yōu)化之經(jīng)典示例
經(jīng)過(guò)上面的指導(dǎo),發(fā)現(xiàn)真的好簡(jiǎn)單,現(xiàn)在與大家一同分享。
ID |
FIELD1 |
FIELD2 | FIELD3 | FIELD4 | Key |
1 |
*** | *** | *** | *** | meat1 |
2 |
*** | *** | *** | *** | meat1 |
3 |
*** | *** | *** | *** | meat1 |
4 | *** | *** | *** | *** | meat1 |
5 |
*** | *** | *** | *** | fruit2 |
6 | *** | *** | *** | *** | fruit2 |
7 |
*** | *** | *** | *** | fruit2 |
8 |
*** | *** | *** | *** | fruit2 |
9 |
*** | *** | *** | *** | fruit2 |
10 |
*** | *** | *** | *** | food3 |
11 |
*** | *** | *** | *** | food3 |
現(xiàn)在有如上所示的結(jié)果
要求:要對(duì)這個(gè)已經(jīng)按key進(jìn)行排序了的數(shù)組進(jìn)行操作,相同key的項(xiàng)進(jìn)行處理。
提示:這個(gè)是很典型的母子表的結(jié)構(gòu),也就是說(shuō)其實(shí)它是兩張表的合并,可以這樣處理成兩個(gè)數(shù)組,方便數(shù)組里面對(duì)塊的操作
array1:ID|Key
ID |
Key |
1 |
meat1 |
2 |
meat1 |
3 |
meat1 |
4 | meat1 |
5 |
fruit2 |
6 | fruit2 |
7 |
fruit2 |
8 |
fruit2 |
9 |
fruit2 |
10 |
food3 |
11 |
food3 |
array2:key => array(ID,FIELD1,FIELD2,FIELD3,FIELD4,FIELD5,Key)
ID |
FIELD1 |
FIELD2 | FIELD3 | FIELD4 | Key | |
meat1=> |
1 |
*** | *** | *** | *** | meat1 |
2 |
*** | *** | *** | *** | meat1 | |
3 |
*** | *** | *** | *** | meat1 | |
4 | *** | *** | *** | *** | meat1 | |
fruit2=> | 5 |
*** | *** | *** | *** | fruit2 |
6 | *** | *** | *** | *** | fruit2 | |
7 |
*** | *** | *** | *** | fruit2 | |
8 |
*** | *** | *** | *** | fruit2 | |
9 |
*** | *** | *** | *** | fruit2 | |
food3=> | 10 |
*** | *** | *** | *** | food3 |
11 |
*** | *** | *** | *** | food3 |
實(shí)現(xiàn)如上數(shù)組分離代碼
這樣后,訪(fǎng)問(wèn)tempArray的塊數(shù)據(jù)就非常方便了
foreach($tempArray as $row){
array1[$row['ID']] = $row['Key'];
array2[$row['Key']][] = $row;
}
訪(fǎng)問(wèn)和處理代碼
foreach($array1 as $ID => $Key){
$this->doSomeThing($ID);
//訪(fǎng)問(wèn)tempArray的塊數(shù)組$array2[$Key]
$this->doSomeThing2($array2[$Key]);
}
相關(guān)文章
關(guān)于zend studio 出現(xiàn)亂碼問(wèn)題的總結(jié)
本篇文章是對(duì)zend studio出現(xiàn)亂碼問(wèn)題進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友參考下2013-06-06php中處理mysql_fetch_assoc返回來(lái)的數(shù)組 不用foreach----echo
php中處理mysql_fetch_assoc返回來(lái)的數(shù)組 不用foreach----echo的方法,需要的朋友可以參考下。2011-05-05談?wù)勑率秩绾螌W(xué)習(xí)PHP網(wǎng)絡(luò)編程
最近用到了php,雖然php的好的都不懂,也只是做一些簡(jiǎn)單的修改和書(shū)寫(xiě)很少的代碼,但感覺(jué)php的功能真的很強(qiáng)2008-05-05PHP實(shí)現(xiàn)數(shù)組根據(jù)某個(gè)單元字段排序操作示例
這篇文章主要介紹了PHP實(shí)現(xiàn)數(shù)組根據(jù)某個(gè)單元字段排序操作,結(jié)合實(shí)例形式分析了php基于array_multisort函數(shù)降序排序操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-08-08基于yaf框架和uploadify插件,做的一個(gè)導(dǎo)入excel文件,查看并保存數(shù)據(jù)的功能
本文主要介紹了基于yaf框架和uploadify插件,做的一個(gè)導(dǎo)入excel文件,查看并保存數(shù)據(jù)的功能的思路與方法。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01php簡(jiǎn)單計(jì)算權(quán)重的方法示例【適合抽獎(jiǎng)?lì)悜?yīng)用】
這篇文章主要介紹了php簡(jiǎn)單計(jì)算權(quán)重的方法,結(jié)合實(shí)例形式分析了php概率相關(guān)的數(shù)值計(jì)算操作技巧,適合抽獎(jiǎng)?lì)悜?yīng)用,需要的朋友可以參考下2019-06-06Json_decode 解析json字符串為NULL的解決方法(必看)
下面小編就為大家?guī)?lái)一篇Json_decode 解析json字符串為NULL的解決方法(必看)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02使用php實(shí)現(xiàn)截取指定長(zhǎng)度
以下是對(duì)使用php實(shí)現(xiàn)截取指定長(zhǎng)度的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下2013-08-08