/** * @param $oneArray 第一个数组 * @param $twoArray 第二个数组 * @param $oneField 第一个数组的字段 * @param $towField 第二个数组的字段 * @param $sub 子集索引名 * @param bool $is_unset 是否删除子集为空的项 * @return bool */function mergeSubArray(&$oneArray, $twoArray,$oneField, $towField, $sub,$is_unset=false){ if (!is_array($oneArray) || !is_array($twoArray)) { return false; } $result = array(); foreach ($twoArray as $k => $v) { $result[$v[$towField]][] = $v; } foreach ($oneArray as $k1 => $v) { foreach ($result as $k2 => $item) { if ($k2 = $v[$oneField]) { $oneArray[$k1][$sub] = isset($result[$k2])?$result[$k2]:[]; if ($is_unset&&empty($oneArray[$k1][$sub])){ unset($oneArray[$k1]); } continue; } } } $oneArray = array_values($oneArray); //重新生成索引}
mergeSubArray($one,$two,'id','adp_id','ad');//使用方法$one 就是合并后的数组
数组 $one
数组 $two
合并后
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。
未经允许不得转载:Str Tom工作室 » 分享一个主表列表查询子表合并数组 类似tp5关联模型