比如数组:array1 = array('a', 'b', 'c');array2 = array('1', '2', '3');比如数组:array1 = array(a, b, c);array2 = array(1, 2, 3); 希望能实现结果 array3 =array(a, 1, b, 2, c, 3); 这种效果, 方法一: function cross_merge_array($arr1, $arr2) { $arr1 = array_values($arr1); $arr2 = array_values($arr2); $count = max(count(
希望能实现结果 array3 = array('a', '1', 'b', '2', 'c', '3'); 这种效果,
方法一:
php"> function cross_merge_array($arr1, $arr2)
     {
         $arr1 = array_values($arr1);
         $arr2 = array_values($arr2);
         $count = max(count($arr1), count($arr2));
         $arr = array();
         for ($i = 0; $i < $count; $i++) {
            if ($i < count($arr1)) $arr[] = $arr1[$i]; // 判断,避免下标越界
           if ($i < count($arr2)) $arr[] = $arr2[$i]; // 判断,避免下标越界
      }
   return $arr;
       }
方法二:
  function cross_merge_array($arr1, $arr2)
  {
       $size = count($arr1) > count($arr22) ? count($arr1) : count($arr2); //取出元素最多的数
      $arr = array();
       for ($i = 0; $i < $count; $i++) {
      if ($i < count($arr1)) {
              array_push($arr, $arr1[$i]); //将数组压入新的变量
          }
 
         if ($i < count($arr2)) {
              array_push($arr, $arr2[$i]);//将数组压入新的变量  topstudy.com点cn  整理
          }
      }
     return $arr;
 }   
其实原理都一样:都是以长度较长的作为遍历的基准,然后交叉插入新的数组中,在循环过程中需要判断是否会下标越界
				 沃梦达教程
				
			本文标题为:php交叉合并数组的办法
 
				
         
 
            
        
             猜你喜欢
        
	     - PHP简单实现二维数组的矩阵转置操作示例 2022-10-02
- 用nohup命令实现PHP的多进程 2023-09-02
- PHP中PDO事务处理操作示例 2022-10-15
- laravel实现按月或天或小时统计mysql数据的方法 2023-02-22
- php微信公众号开发之秒杀 2022-11-23
- Laravel balde模板文件中判断数据为空方法 2023-08-30
- laravel通用化的CURD的实现 2023-03-17
- PHP仿tp实现mvc框架基本设计思路与实现方法分析 2022-10-18
- PHP实现微信支付(jsapi支付)流程步骤详解 2022-10-09
- windows下9款一键快速搭建PHP本地运行环境的好工具(含php7.0环境) 2023-09-02
 
						 
						 
						 
						 
						 
				 
				 
				 
				