这个是数组
主要功能就是Thinkphp视图模型里查询的结果 我想
查询每个数组里的相同的标题值 然后进行合并 合并数组 貌似用array_merge()
我怎么查找相同的标题呢 foreach 遍历 返回数组里的索引值 可以么 貌似 key() 函数有这个功能 求好心人具体写个
相同的标题 数组元素的位置 这样返回 合并的时候就直接 这样的形式用 可以么
array_merge(array[0],array[1])
相同的标题 然后合并的是图片的连接字段这样 pictureurl就是这个不一样
简单说就是多图上传 发文章这样的 文章找找以后要是有几千篇 那数组就是好几倍的量 高效的计算 能用的 求大神指点啊~
这样
array(2) { [0] => array(5) { ["picTitle"] => string(33) "标题1" ["picCategroy"] => string(6) "分类" ["picAuthor"] => string(12) "作者" ["picPostTime"] => string(19) "2014-11-20 16:05:16" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141120/546da0784831c.png" } [1] => array(5) { ["picTitle"] => string(33) "标题1" ["picCategroy"] => string(6) "分类" ["picAuthor"] => string(12) "作者" ["picPostTime"] => string(19) "2014-11-20 16:05:16" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141120/546da0746edb8.png" }}
回复讨论(解决方案)
那你最终要达成什么样的结果呢?
目的不同,算法也不同
那你最终要达成什么样的结果呢?
目的不同,算法也不同
array(2) { [0] => array(5) { ["picTitle"] => string(33) "标题1" ["picCategroy"] => string(6) "分类" ["picAuthor"] => string(12) "作者" ["picPostTime"] => string(19) "2014-11-20 16:05:16" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141120/546da0784831c.png,attachment/picture/uploadify/20141120/546da0746edb8.png" }}
就是这样的 相同的标题 不同的就是pictureurl
合并就行了 求版主指点~
$ar = array( array( "picTitle" => "标题1", "picCategroy" => "分类", "picAuthor" => "作者", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png", ), array( "picTitle" => "标题1", "picCategroy" => "分类", "picAuthor" => "作者", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png", ),);foreach(call_user_func_array('array_merge_recursive', $ar) as $key=>$item) { $res[$key] = join(',', array_unique($item));}var_export($res);
array ( 'picTitle' => '标题1', 'picCategroy' => '分类', 'picAuthor' => '作者', 'picPostTime' => '2014-11-20 16:05:16', 'pictureurl' => 'attachment/picture/uploadify/20141120/546da0784831c.png,attachment/picture/uploadify/20141120/546da0746edb8.png',)
$ar = array( array( "picTitle" => "标题1", "picCategroy" => "分类", "picAuthor" => "作者", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png", ), array( "picTitle" => "标题1", "picCategroy" => "分类", "picAuthor" => "作者", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png", ),);foreach(call_user_func_array('array_merge_recursive', $ar) as $key=>$item) { $res[$key] = join(',', array_unique($item));}var_export($res);
array ( 'picTitle' => '标题1', 'picCategroy' => '分类', 'picAuthor' => '作者', 'picPostTime' => '2014-11-20 16:05:16', 'pictureurl' => 'attachment/picture/uploadify/20141120/546da0784831c.png,attachment/picture/uploadify/20141120/546da0746edb8.png',)
版主大人 还得麻烦您看眼 这个是在相同的标题下才合并的 貌似有点复杂
array(6) { [0] => array(5) { ["picTitle"] => string(7) "标题2" ["picCategroy"] => string(6) "海报" ["picAuthor"] => string(12) "星耀学园" ["picPostTime"] => string(19) "2014-11-26 11:59:50" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141126/547550278b7db.jpg" } [1] => array(5) { ["picTitle"] => string(7) "标题2" ["picCategroy"] => string(6) "海报" ["picAuthor"] => string(12) "星耀学园" ["picPostTime"] => string(19) "2014-11-26 11:59:50" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141126/54755027ab89b.jpg" } [2] => array(5) { ["picTitle"] => string(7) "标题2" ["picCategroy"] => string(6) "海报" ["picAuthor"] => string(12) "星耀学园" ["picPostTime"] => string(19) "2014-11-26 11:59:50" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141126/547550273b753.jpg" } [3] => array(5) { ["picTitle"] => string(7) "标题2" ["picCategroy"] => string(6) "海报" ["picAuthor"] => string(12) "星耀学园" ["picPostTime"] => string(19) "2014-11-26 11:59:50" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141126/54755027d8488.jpg" } [4] => array(5) { ["picTitle"] => string(33) "同步写入信息和附件表里" ["picCategroy"] => string(6) "海报" ["picAuthor"] => string(12) "星耀学园" ["picPostTime"] => string(19) "2014-11-20 16:05:16" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141120/546da0746edb8.png" } [5] => array(5) { ["picTitle"] => string(33) "同步写入信息和附件表里" ["picCategroy"] => string(6) "海报" ["picAuthor"] => string(12) "星耀学园" ["picPostTime"] => string(19) "2014-11-20 16:05:16" ["pictureurl"] => string(55) "attachment/picture/uploadify/20141120/546da0784831c.png" }}
用您这个处理完 都合并在一起了 我想是不同的标题的是不一样的 标题1 相同标题的都合并在一起 一个数组 标题2相同的合并在一起一个数组 就是图片链接pictureurl 这个进行合并 求大大指点 如何判断很多个标题里 判断标题是重复的呢 这个肯定是一个标题有多个重复的数组, 主要是区分去多个不同标题。
array ( 'picTitle' => '标题2,同步写入信息和附件表里', 'picCategroy' => '海报', 'picAuthor' => '星耀学园', 'picPostTime' => '2014-11-26 11:59:50,2014-11-20 16:05:16', 'pictureurl' => 'attachment/picture/uploadify/20141126/547550278b7db.jpg,attachment/picture/uploadify/20141126/54755027ab89b.jpg,attachment/picture/uploadify/20141126/547550273b753.jpg,attachment/picture/uploadify/20141126/54755027d8488.jpg,attachment/picture/uploadify/20141120/546da0746edb8.png,attachment/picture/uploadify/20141120/546da0784831c.png', )
$ar = array( array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/547550278b7db.jpg", ), array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/54755027ab89b.jpg", ), array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/547550273b753.jpg", ), array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/54755027d8488.jpg", ), array( "picTitle" => "同步写入信息和附件表里", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png", ), array( "picTitle" => "同步写入信息和附件表里", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png", ),);$res = array();foreach($ar as $item) { if(! isset($res[$item['picTitle']])) $res[$item['picTitle']] = $item; else $res[$item['picTitle']]['pictureurl'] .= ',' . $item['pictureurl'];}var_export(array_values($res));
array ( 0 => array ( 'picTitle' => '标题2', 'picCategroy' => '海报', 'picAuthor' => '星耀学园', 'picPostTime' => '2014-11-26 11:59:50', 'pictureurl' => 'attachment/picture/uploadify/20141126/547550278b7db.jpg,attachment/picture/uploadify/20141126/54755027ab89b.jpg,attachment/picture/uploadify/20141126/547550273b753.jpg,attachment/picture/uploadify/20141126/54755027d8488.jpg', ), 1 => array ( 'picTitle' => '同步写入信息和附件表里', 'picCategroy' => '海报', 'picAuthor' => '星耀学园', 'picPostTime' => '2014-11-20 16:05:16', 'pictureurl' => 'attachment/picture/uploadify/20141120/546da0746edb8.png,attachment/picture/uploadify/20141120/546da0784831c.png', ),)
随便写了下,没测试过,大楷是这么个思路
$ar = array(
array(
"picTitle" => "标题1",
"picCategroy" => "分类",
"picAuthor" => "作者",
"picPostTime" => "2014-11-20 16:05:16",
"pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png",
),
array(
"picTitle" => "标题1",
"picCategroy" => "分类",
"picAuthor" => "作者",
"picPostTime" => "2014-11-20 16:05:16",
"pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png",
),
);
//标题=>数组索引数组
$map_arr=array();
foreach($ar as $key=>$item)
{
//判断是否在标题=>数组索引数组中
if(isset($map_arr[$item['picTitle']]))
{
//在的话合并
$ar[$key]=array_merge($ar[$key],$map_arr[$item['picTitle']]);
}
else
{
//不在的话存入映射索引
$map_arr[$item['picTitle']]=$item;
unset($ar[$key]); //删除原来在数组存在的值
}
}
补充下 unset($ar[$key]); //删除原来在数组存在的值
这句移动到这个下面,疏忽写错了
//在的话合并
$ar[$key]=array_merge($ar[$key],$map_arr[$item['picTitle']]);
$arr = array( array( "picTitle" => "标题1", "picCategroy" => "分类", "picAuthor" => "作者", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png", ), array( "picTitle" => "标题1", "picCategroy" => "分类", "picAuthor" => "作者", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png", ));$item=array();foreach($arr as $key=>$value){ foreach($value as $k=>$v){ if(!isset($item[$k])){ $item[$k]=$v; } }}print_r($item);
$ar = array( array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/547550278b7db.jpg", ), array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/54755027ab89b.jpg", ), array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/547550273b753.jpg", ), array( "picTitle" => "标题2", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-26 11:59:50", "pictureurl" => "attachment/picture/uploadify/20141126/54755027d8488.jpg", ), array( "picTitle" => "同步写入信息和附件表里", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0746edb8.png", ), array( "picTitle" => "同步写入信息和附件表里", "picCategroy" => "海报", "picAuthor" => "星耀学园", "picPostTime" => "2014-11-20 16:05:16", "pictureurl" => "attachment/picture/uploadify/20141120/546da0784831c.png", ),);$res = array();foreach($ar as $item) { if(! isset($res[$item['picTitle']])) $res[$item['picTitle']] = $item; else $res[$item['picTitle']]['pictureurl'] .= ',' . $item['pictureurl'];}var_export(array_values($res));
array ( 0 => array ( 'picTitle' => '标题2', 'picCategroy' => '海报', 'picAuthor' => '星耀学园', 'picPostTime' => '2014-11-26 11:59:50', 'pictureurl' => 'attachment/picture/uploadify/20141126/547550278b7db.jpg,attachment/picture/uploadify/20141126/54755027ab89b.jpg,attachment/picture/uploadify/20141126/547550273b753.jpg,attachment/picture/uploadify/20141126/54755027d8488.jpg', ), 1 => array ( 'picTitle' => '同步写入信息和附件表里', 'picCategroy' => '海报', 'picAuthor' => '星耀学园', 'picPostTime' => '2014-11-20 16:05:16', 'pictureurl' => 'attachment/picture/uploadify/20141120/546da0746edb8.png,attachment/picture/uploadify/20141120/546da0784831c.png', ),)
谢谢版主大人 解决了 只不过最后的这个var_export函数去掉 就是我要的结果了~

phpsessionstrackuserdataacrossmultiplepagerequestsusingauniqueIdStoredInacookie.here'showtomanageThemeffectionaly:1)startAsessionWithSessionwwithSession_start()和stordoredAtain $ _session.2)

在PHP中,遍历会话数据可以通过以下步骤实现:1.使用session_start()启动会话。2.通过foreach循环遍历$_SESSION数组中的所有键值对。3.处理复杂数据结构时,使用is_array()或is_object()函数,并用print_r()输出详细信息。4.优化遍历时,可采用分页处理,避免一次性处理大量数据。这将帮助你在实际项目中更有效地管理和使用PHP会话数据。

会话通过服务器端的状态管理机制实现用户认证。1)会话创建并生成唯一ID,2)ID通过cookies传递,3)服务器存储并通过ID访问会话数据,4)实现用户认证和状态管理,提升应用安全性和用户体验。

Tostoreauser'snameinaPHPsession,startthesessionwithsession_start(),thenassignthenameto$_SESSION['username'].1)Usesession_start()toinitializethesession.2)Assigntheuser'snameto$_SESSION['username'].Thisallowsyoutoaccessthenameacrossmultiplepages,enhanc

PHPSession失效的原因包括配置错误、Cookie问题和Session过期。1.配置错误:检查并设置正确的session.save_path。2.Cookie问题:确保Cookie设置正确。3.Session过期:调整session.gc_maxlifetime值以延长会话时间。

在PHP中调试会话问题的方法包括:1.检查会话是否正确启动;2.验证会话ID的传递;3.检查会话数据的存储和读取;4.查看服务器配置。通过输出会话ID和数据、查看会话文件内容等方法,可以有效诊断和解决会话相关的问题。

多次调用session_start()会导致警告信息和可能的数据覆盖。1)PHP会发出警告,提示session已启动。2)可能导致session数据意外覆盖。3)使用session_status()检查session状态,避免重复调用。

在PHP中配置会话生命周期可以通过设置session.gc_maxlifetime和session.cookie_lifetime来实现。1)session.gc_maxlifetime控制服务器端会话数据的存活时间,2)session.cookie_lifetime控制客户端cookie的生命周期,设置为0时cookie在浏览器关闭时过期。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具