今天碰到了这么一个问题,处理的数组$tempArray为如下所示形式(key已经排序),然后要根据这个结果进行分块的处理
经过上面的指导,发现真的好简单,现在与大家一同分享。
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 |
现在有如上所示的结果
要求:要对这个已经按key进行排序了的数组进行操作,相同key的项进行处理。
提示:这个是很典型的母子表的结构,也就是说其实它是两张表的合并,可以这样处理成两个数组,方便数组里面对块的操作
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 |
实现如上数组分离代码
这样后,访问tempArray的块数据就非常方便了
foreach($tempArray as $row){
array1[$row[‘ID’]] = $row[‘Key’];
array2[$row[‘Key’]][] = $row;
}
访问和处理代码
foreach($array1 as $ID => $Key){
$this->doSomeThing($ID);
//访问tempArray的块数组$array2[$Key]
$this->doSomeThing2($array2[$Key]);
}
- 优化使用mysql存储session的php代码
- PHP性能优化 产生高度优化代码
- PHP代码优化之成员变量获取速度对比
- PHP代码优化的53个细节
- php垃圾代码优化操作代码
- php 代码优化的42条建议 推荐
- 优化PHP代码的53条建议
- PHP数组交集的优化代码分析
- 优化PHP代码技巧的小结
- 24条货真价实的PHP代码优化技巧
相关文章
-
查找php配置文件php.ini所在路径的二种方法
这篇文章主要介绍了查找php配置文件php.ini所在路径的二种方法,很多同学在安装完php后找不到php.ini,或者是别人安装的环境,本文的方法简单实用,需要的朋友可以参考下2014-05-05
-
one.php 多项目、函数库、类库 统一为一个版本的方法
这篇文章主要介绍了one.php 多项目、函数库、类库 统一为一个版本的方法,需要的朋友可以参考下2020-08-08
-
PHP echo,print,printf,sprintf函数之间的区别与用法详解
这篇文章主要是对PHP中echo,print,printf,sprintf函数之间的区别与用法进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助2013-11-11
-
php中simplexml_load_file函数用法实例
这篇文章主要介绍了php中simplexml_load_file函数用法,以实例形式详细的讲述了simplexml_load_file函数读取XML文件的具体方法,非常具有实用价值,需要的朋友可以参考下2014-11-11
-
解析posix与perl标准的正则表达式区别
本篇文章是对posix与perl标准的正则表达式区别进行了详细的分析介绍,需要的朋友参考下2013-06-06
-
php实现mysql事务处理的方法
这篇文章主要介绍了php实现mysql事务处理的方法,以实例形式实现了事务回滚的技巧,代码简单实用,需要的朋友可以参考下2014-12-12
-
PHP实现对文件锁进行加锁、解锁操作的方法
这篇文章主要介绍了PHP实现对文件锁进行加锁、解锁操作的方法,结合实例形式分析了PHP针对文件进行加锁、解锁操作的功能、实现方法与相关注意事项,需要的朋友可以参考下2017-07-07
-
php下保存远程图片到本地的办法
有些时候我们看到网络上有一些漂亮的图片,而又不想手动去保存下来,尤其是大量的这样的图片,那这个时候我们需要写一段程序来帮助我们完成这个工作。2010-08-08
-
PHP中call_user_func_array回调函数的用法示例
这篇文章主要给大家介绍了PHP中call_user_func_array回调函数的用法,文中给出了详细的示例代码,相信对大家的理解和学习很有帮助,有需要的朋友们可以参考借鉴,下面来一起学习学习吧。2016-11-11
-
php基于curl重写file_get_contents函数实例
这篇文章主要介绍了php基于curl重写file_get_contents函数的方法,结合实例形式分析了php使用curl重写file_get_contents函数实现屏蔽错误提示的相关技巧,需要的朋友可以参考下2016-11-11
最新评论