php将数组中特定值提取出新数组的方法

最近开发新项目,因页面设计需要多次查询同一数据库,为了避免多次重复查询,故而将数据一次全部取出,利用计算机的计算资源根据数组中的不同值组合成新的数组。代码很简单。

首先我们看下数组中的内容:

php将数组中特定值提取出新数组

在上图中我们看到有两个type等于“空调”的记录,所以下面的源码实现的就是根据“type”=>"空调"的记录提取出来组成新的数组。

源代码:

  1. <?php
  2. $arr=Array(
  3.     Array('id' => 1,'type' => '空调'),
  4.     Array('id' => 2,'type' => '电视机'),
  5.     Array('id' => 3,'type' => '空调')
  6. );
  7. function filter($elem){
  8.     return $elem['type'] == '空调';
  9. }
  10. $newarr = array_filter($arr,'filter');
  11. echo "<pre>";
  12. print_r($newarr);
  13. exit;

执行结果:

在系统开发中,数据库往往成为整体性能的瓶颈,虽然能够通过其他方式去解决,但是能减少一次查询就意味着为其他数据取用业务提升了一些性能。个人愚见。有不同意的也可以在评论区发表自己的观点。

Thinkphp中控制器的写法:

  1. $newarr = array_filter($arr,function ($item){
  2.             return $item['type'] == '空调';
  3.         });
你想把广告放到这里吗?

发表评论

您必须 登录 才能发表留言!