神秘的数组是怎么来的

tp_2015_6 2015-06-08 10:58:05
先说说大概:这是一个模板中输出页面的问题。它是用一个数组就输出了一大坨的信息,里面有文字也有图片。
让人不解的是,它只用了一个句子就办了。

为了便于大家分析,我先列表在模板中的句子
<!--StandardLayout Begin-->
<?php echo $output['web_html']['index'];?>
<!--StandardLayout End-->


这一句话<?php echo $output['web_html']['index'];?>就输出了N许多文字加图片展示在首页。然后我又找到了调用方法句子的方法
是下面这一大坨(当然限于篇幅我不可能全写出来,因为太长,只是把这关键的展示出来,相信高手一看就明白)
//板块信息
$model_web_config = Model('web_config');
$web_html = $model_web_config->getWebHtml('index');
Tpl::output('web_html',$web_html);


关于getWebHtml这个方法如下:
/**
* 模块html信息
*
*/
public function getWebHtml($web_page = 'index',$update_all = 0){
$web_array = array();
$web_list = $this->getWebList(array('web_show'=>1,'web_page'=> array('like',$web_page.'%')));
if(!empty($web_list) && is_array($web_list)) {
foreach($web_list as $k => $v){
$key = $v['web_page'];
if ($update_all == 1 || empty($v['web_html'])) {//强制更新或内容为空时查询数据库
$web_array[$key] .= $this->updateWebHtml($v['web_id'],$v['style_name']);
} else {
$web_array[$key] .= $v['web_html'];
}
}
}
return $web_array;
}

好了,我的问题来了,
$output['web_html']['index'];是怎么来的,怎么['web_html']和['index']就能搞成数组呢,道理何在?
...全文
313 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cj1810718 2015-10-15
  • 打赏
  • 举报
回复
shopnc 的吧, web_html 写在数据库里
Dleno 2015-06-09
  • 打赏
  • 举报
回复
<!--StandardLayout Begin--> ***************** <!--StandardLayout End--> 是不是这个在起作用,就类似于模板标签什么的。你看下它模板系统里有没有针对这个标签的特殊处理呢。。
xuzuning 2015-06-09
  • 打赏
  • 举报
回复
你的 $web_list 有这样一项 [web_page] => index 在你的代码 foreach($web_list as $k => $v){ $key = $v['web_page']; //此时的 $key 的值不就是 index 了吗? if ($update_all == 1 || empty($v['web_html'])) {//强制更新或内容为空时查询数据库 $web_array[$key] .= $this->updateWebHtml($v['web_id'],$v['style_name']); } else { $web_array[$key] .= $v['web_html']; } } 那么对 $web_array[$key] 赋值,不就是对 $web_array['index'] 赋值吗?
tp_2015_6 2015-06-09
  • 打赏
  • 举报
回复
我是这样想的:即然$output['web_html']['index']是一个数组,那么,它肯定是一个二维数组,并且能打印出来二维的键值关系来。 但是这个还真打不出来,挺怪的。
tp_2015_6 2015-06-09
  • 打赏
  • 举报
回复
我打印了一下$web_list数组是这样形式: Array ( [0] => Array ( [web_id] => 1 [web_name] => 1F [style_name] => red [web_page] => index [update_time] => 1433752194 [web_sort] => 1 [web_show] => 1 [web_html] =>
tp_2015_6 2015-06-09
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
你看看 getWebList 方法是怎么写的 或打印出 $web_list 就知道了
这个是$web_list /** * 读取记录列表 * * @param * @return array 数组格式的返回结果 */ public function getWebList($condition = array('web_page' => 'index'),$page = ''){ $result = $this->table('web')->where($condition)->order('web_sort')->page($page)->select(); return $result; }
xuzuning 2015-06-09
  • 打赏
  • 举报
回复
你看看 getWebList 方法是怎么写的 或打印出 $web_list 就知道了
内容概要:本文深入解析了C语言中指针与数组的内在关系,重点阐述了一维数组和二维数组与指针的等价性及相互转换机制。通过详细讲解数组名的本质、指针访问数组元素的方式(包括指针移动和下标转换)、函数参数传递中数组退化为指针的特性,以及行指针与列指针在二维数组中的应用,全面揭示了指针与数组在内存访问和操作上的统一性。文章还结合三个实战案例——使用指针查找一维数组最小值、实现二维数组转置、统计偶数个数,强化了理论知识的实际应用。 适合人群:具备C语言基础语法知识,正在深入学习指针与数组机制的初学者或中级开发者,尤其适合高校计算机专业学生和刚进入嵌入式、系统级编程领域的从业人员。 使用场景及目标:① 理解数组名与指针的等价关系及其在内存中的表现形式;② 掌握通过指针高效访问和操作一维及二维数组的方法;③ 提升在函数参数传递、数组遍历、数据处理等场景下的编程能力;④ 为后续学习动态内存管理、多维数组处理和底层系统编程打下坚实基础。 阅读建议:学习过程中应结合代码示例在开发环境中动手调试,重点关注指针运算、地址变化和sizeof操作符的行为差异,建议对照内存布局图理解指针移动的实质,以达到真正掌握指针与数组的核心原理。

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧