十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
PHP 中的 array_merge()、array_merge_recursive()函数可以实现
站在用户的角度思考问题,与客户深入沟通,找到芷江网站设计与芷江网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站制作、成都外贸网站建设、企业官网、英文网站、手机端网站、网站推广、域名注册、网页空间、企业邮箱。业务覆盖芷江地区。
array_merge() 函数把两个或多个数组合并为一个数组。
如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的)。如果数组是数字索引的,则键名会以连续方式重新索引。
注意:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。
array_merge(array1,array2,array3...)
参数说明
array1 必需。输入的第一个数组。
array2 必需。输入的第二个数组。
array3 可选。可指定的多个输入数组。
例如:
?php
$a1=array("a"="Horse","b"="Dog");
$a2=array("c"="Cow","b"="Cat");
print_r(array_merge($a1,$a2));
?
输出:
Array ( [a] = Horse [b] = Cat [c] = Cow )
仅使用一个数组参数:
?php
$a=array(3="Horse",4="Dog");
print_r(array_merge($a));
?
输出:
Array ( [0] = Horse [1] = Dog )
array_merge_recursive() 函数与array_merge()函数不同的是,当有重复的键名时,值不会被覆盖,而是将多个相同键名的值递归组成一个数组。
例如:
?php
$a1=array("a"="Horse","b"="Dog");
$a2=array("c"="Cow","b"="Cat");
print_r(array_merge_recursive($a1,$a2));
?
输出:
Array (
[a] = Horse
[b] = Array ( [0] = Dog [1] = Cat )
[c] = Cow
)
$Data = M('course_card'); // 实例化Data数据对象import('ORG.Util.Page');// 导入分页类$count = $Data-where($map)-count();// 查询满足要求的总记录数$Page = new Page($count,1);// 实例化分页类 传入总记录数$page-setConfig('header','会员卡');$Page-setConfig('prev', "上一页");//上一页$Page-setConfig('next', '下一页');//下一页$Page-setConfig('first', '首页');//第一页$Page-setConfig('last', "末页");//最后一页$Page - setConfig ( 'theme', '%HEADER% %FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%' );// 进行分页数据查询 注意page方法的参数的前面部分是当前的页数使用 $_GET[p]获取$nowPage = isset($_GET['p'])?$_GET['p']:1;$list = $Data-where($map)-page($nowPage.','.$Page-listRows)-select();$show = $Page-show();// 分页显示输出$this-assign('page',$show);// 赋值分页输出$this-assign('course_card',$list);// 赋值数据集
毕竟这是你自己的代码,单看这一个文件的代码别人不一定能明白它的逻辑,所以写好贴出来让你测试一下不怎么靠谱,
而且看你的描述,这两个文件功能类似,只是某一条件不同,所以获取的结果也不同,那么应该是条件决定结果了,
但你说的“在一个文件中同时输出全国、上海的数据”这里有歧义,是要求全国和上海的数据一起输出,还是要求这个文件能够在要全国数据时输出全国数据要上海数据时输出上海数据?
如果是前者,那么没有条件直接输出;如果是后者,那么需要一个参数来区分输出什么。
还有一点:($o['city'] = $city['name']) || ($o['city'] = '全国');和($o['city'] = $city['name']) || ($o['city'] = '上海');这里的逻辑是什么?
看上去应该是给数组$o的元素city赋值,不过这里用||连接的两个赋值语句的关系是什么,确切说是$city['name']和'全国'及'上海'是什么关系?
另外,既然可以($o['city'] = $city['name']) || ($o['city'] = '上海');和($o['city'] = $city['name']) || ($o['city'] = '全国');那么可不可以($o['city'] = $city['name']) || ($o['city'] = '上海)|| ($o['city'] = '全国');?
或者就是像三楼说的那样进行封装,然后根据参数来确定输出