当前位置:清晨 » 站长笔记 » php笔记 » php数组特定元素修改方法

php数组特定元素修改方法

发布日期:2017年1月18日 11:01:40 点击量: 452

宝塔服务器面板,一键全能部署及管理,送你¥3188礼包,点我领取,简单好用的 Linux/Windows 面板

原数组格式

$tdata=

Array
(
[0] => Array
(
[id] => 1
[fid] => 0
[l_title] => 今日头条
[l_key] => 今日头条
[l_desc] => 今日头条
[l_ico] => ../upload/images/14842284478853.jpg
[l_module] => article
[l_hidden] => 0
)

[1] => Array
(
[id] => 2
[fid] => 11
[l_title] => 头条新闻
[l_key] => 头条新闻
[l_desc] => 头条新闻
[l_ico] =>
[l_module] => article
[l_hidden] => 0
)

[2] => Array
(
[id] => 11
[fid] => 0
[l_title] => 明日新闻
[l_key] => 明日新闻
[l_desc] => 明日新闻
[l_ico] =>
[l_module] => article
[l_hidden] => 0
)

)

需求:fid为上级分类ID,使用smarty模板引擎时需输出上级分类名称,而不是ID。即数组元素fid修改成分类名称。

已有函数get_list_name($id),可通过分类id获取分类名称。

代码片段

//上级菜单ID替换成菜单名
foreach($tdata as $row){
foreach($row as $k=>$v){
if($k=='fid'){
if($row[$k]==0){
$row[$k] = '顶级分类';
}else{
$row[$k] = get_list_name($v);
}
}
}
$data[] = $row;
}
//上级菜单ID替换成菜单名

$data即为新数组,格式为

 

Array
(
[0] => Array
(
[id] => 1
[fid] => 顶级分类
[l_title] => 今日头条
[l_key] => 今日头条
[l_desc] => 今日头条
[l_ico] => ../upload/images/14842284478853.jpg
[l_module] => article
[l_hidden] => 0
)

[1] => Array
(
[id] => 2
[fid] => 明日新闻
[l_title] => 头条新闻
[l_key] => 头条新闻
[l_desc] => 头条新闻
[l_ico] =>
[l_module] => article
[l_hidden] => 0
)

[2] => Array
(
[id] => 11
[fid] => 顶级分类
[l_title] => 明日新闻
[l_key] => 明日新闻
[l_desc] => 明日新闻
[l_ico] =>
[l_module] => article
[l_hidden] => 0
)

)

最后通过赋值即可在模板中循环使用。

代码:

$smarty -> assign('list', $data);//给变量赋值

 

模板中代码:

{foreach item=li from=$list}
<tr>
<td>{$li.id}</td>
<td>{$li.fid}</td>
<td>{assign var="module" value="{$lng.{$li.l_module}}"}
{$module}</td>
<td>{$li.l_title}</td>
<td>{$li.l_key}</td>
<td>{$li.l_desc}</td>
<td><a href="list.php?module={$li.l_module}&type=edit&id={$li.id}">编辑</a>&nbsp;<a href="list.php?module={$li.l_module}&type=del&id={$li.id}">删除</a></td>
</tr>
{/foreach}

 


关键词:

本文网址:https://www.menglei.info/2324/,转载请以链接形式注明出处,谢谢合作!

老薛主机专属优惠码: PT ,有需要购买的同学可以使用.可享受30%的优惠.

联系站长: shadoweb@qq.com QQ: 925474725

发表评论

电子邮件地址不会被公开。 必填项已用*标注