zoukankan      html  css  js  c++  java
  • array_merge函数的注意事项

      array_merge — 合并一个或多个数组 

      array_merge() 将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。

      如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。

      如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。

      array_merge will return NULL if any of the arguments are NULL。

      例如:

        $array1 = NULL;
        $array2 = array(1 => "data");
        $result = array_merge($array1, $array2);

        var_dump($result);结果为NULL,所以在写SQL语句获取结果集的时候要注意,if(empty($resut)){$result=array();} 赋值为空数组后再和其他的数组进行合并。

      例子

            //新的逻辑
            $agent_id=$location_model->where("id='$location_id'")->getField('agent_id');
            //再查询已授权的运营商(要排除授权商家)
            if(!empty($agent_id)){
                $tpl_list2=$tpl_model->where("status=1 and agent_range=2 and agent_id in ($agent_id) and supplier_id=''")->field($field)->order('id desc')->select();
            }
            if(empty($tpl_list2)){
                $tpl_list2=array();
            }
    
            //再查询授权全部运营商
            $tpl_list3=$tpl_model->where("status=1 and agent_range=1")->field($field)->order('id desc')->select();
            if(empty($tpl_list3)){
                $tpl_list3=array();
            }
         //array_merge will return NULL if any of the arguments are NULL
            $tpl_list_merge=array_merge($tpl_list1,$tpl_list2,$tpl_list3);

    如果您阅读过此文章有所收获,请为我顶一个,如果文章中有错误的地方,欢迎指出。

    相互学习,共同进步!

     

    突然十年便过去,都什么时候了,努力,奋斗!
  • 相关阅读:
    leetcode_24. 两两交换链表中的节点
    Mysql大数据量分页优化
    MySQL 默认排序是什么
    spring注入map,spring注入一个接口的多个实现类在map里
    eureka缓存细节以及生产环境的最佳配置
    MySQL 5.7性能调优
    安装后的十个MySQL性能调整设置(版本:5.1、5.5 和5.6)
    docker部署tomcat应用和MySQL数据库
    MySQL热备工具Xtrabackup
    MySQL数据库的冷备方式
  • 原文地址:https://www.cnblogs.com/zhangxiaoliu/p/5043644.html
Copyright © 2011-2022 走看看