thinkphp 3.2 视图模型 实例 视图查询结果 二维数组 合并
使用视图模型查询的时候 结果是这样的
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"
}
}
想要的结果是这样
array(2) {
["0"] => array(5) {
["picTitle"] => string(7) "标题2"
["picCategroy"] => string(6) "海报"
["picAuthor"] => string(12) "星耀学园"
["picPostTime"] => string(19) "2014-11-26 11:59:50"
["pictureurl"] => string(223) "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(5) {
["picTitle"] => string(33) "同步写入信息和附件表里"
["picCategroy"] => string(6) "海报"
["picAuthor"] => string(12) "星耀学园"
["picPostTime"] => string(19) "2014-11-20 16:05:16"
["pictureurl"] => string(111) "attachment/picture/uploadify/20141120/546da0746edb8.png,attachment/picture/uploadify/20141120/546da0784831c.png"
}
}
完整实例开始
控制器 里 根据生成的SQL 语句在phpmyadmin里运行 出现排序规则不一致的情况 两个表的字段 排序规则不一致 整表排序规则一样的情况下
PictureController.class.php
public function Pic(){
$PicModel =D('PicView');
/* dump($PicModel);*/
$s1= $PicModel->field('picTitle,picCategroy,picAuthor,picPostTime,pictureurl')->order('picPostTime desc')->select();
/* dump($PicModel->getLastSql()); 查询最后的sql 语句*/
/* dump($s1);*/
$zhengli = $this->mergePictureURL($s1);
/* dump( $zhengli );*/
$this->assign("content",$zhengli);
$this->display();
}
视图模型里
PicViewModel.class.php
<?php
namespace Home\Model;
use Think\Model\ViewModel;
class PicViewModel extends ViewModel{
public $viewFields =array(
'Picture'=> array('picTitle','picToken','picCategroy','picAuthor','picPostTime','_as'=>'Picture'),
'PictureAttachment' =>array('pictureid','pictureurl','creattime','_on'=>'Picture.picToken = PictureAttachment.pictureid','_as'=>'PictureAttachment'), );
}
视图里
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<volist name="content" id="data">
<!-- {$data.picTitle} {$data.picAuthor}发布时间:{$data.picPostTime}-->
{$data.picTitle}
</volist>
</body>
</html>
thinkphp 3.2 视图模型 实例 视图查询结果 二维数组 合并的更多相关文章
- php获取一维,二维数组长度的方法(有实例)
在php中获取数组长度方法很简单,php为我们提供了两个函数可以计算一维数组长度,如count,sizeof都可以直接统计数组长度哦,下面我们来看几个实例吧.php如何获取数组的长度,使用php函数c ...
- C++二级指针第二种内存模型(二维数组)
C++二级指针第二种内存模型(二维数组) 二维数组 二维数组本质上是以数组作为数组元素的数组,即“数组的数组”. 定义 类型说明符 数组名[常量表达式][常量表达式] 例如: float a[3][4 ...
- ThinkPHP的cookide保存二维数组的方法
ThinkPHP中的cookie是不支持二维数组的. 如果要保存二维数组.只能特殊处理 $data[263] = array('gid'=>263,'num'=>1); $data[266 ...
- thinkphp二维数组模板输出方法
thinkphp二维数组模板输出方法 先写个记录,有空再整理发上来
- C语言提高 (3) 第三天 二级指针的三种模型 栈上指针数组、栈上二维数组、堆上开辟空间
1 作业讲解 指针间接操作的三个必要条件 两个变量 其中一个是指针 建立关联:用一个指针指向另一个地址 * 简述sizeof和strlen的区别 strlen求字符串长度,字符数组到’\0’就结束 s ...
- PHP代码篇(二)-- array_column函数将二维数组格式化成固定格式的一维数组,及优化查询方法
小白因为经常用到多表查询,比如获取一个会员领取的卡卷list,里面当然包含了1“会员优惠券记录表t_coupon_members”主表,然后2“门店优惠券表t_coupon”,和3“门店信息表t_sh ...
- 子串查询(二维前缀数组) 2018"百度之星"程序设计大赛 - 资格赛
子串查询 Time Limit: 3500/3000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Subm ...
- OneThink视图模型进行组合查询!文档组合文档详情
测试方法:twoCate: public function twoCate(){ $where = array( 'category_id'=>43 ); $list = D('TwoView' ...
- thinkphp foreach循环生成二维数组的方法
先做个问题记录,另外下面是做的过程中遇到的一个没想明白的现象 foreach($result as $key => $val ){ $wzList[$key]['lik']=$val[0]; $ ...
随机推荐
- 100197C
合并果子 每一次取最小的两个合并 答案加上这两个值 因为这是一颗二叉树,我们计算一条路的长度,可以看成从叶子节点逐渐合并,直到根 #include<iostream> #include&l ...
- php图片下载
直接用url会在浏览器中打开图片, 想直接弹出保存框,可以用下面方法 下面的$dir指的是图片在服务器的绝对地址 function iDownload(){ $name=$_GET['name']; ...
- Linux 简介
转载:http://c.biancheng.net/cpp/html/2726.html Linux简介 严格的来讲,Linux 不算是一个操作系统,只是一个 Linux 系统中的内核,即计算机软件与 ...
- eclipse crash
SIGSEGV (0xb) at pc=0x00007fbcae8f2c91, pid=5707, tid=140449979574016 JRE version: 7.0_25-b30 Java V ...
- Linux下修改进程名称
catalog . 应用场景 . 通过Linux prctl修改进程名 . 通过修改进程argv[]修改进程名 . 通过bash exec命令修改一个进程的cmdline信息 1. 应用场景 . 标识 ...
- C#基础之数组排序,对象大小比较
从个小例子开始: 1 2 3 int[] intArray = new int[]{2,3,6,1,4,5}; Array.Sort(intArray); Array.ForEach<int&g ...
- 判断请求是不是ajax
public static bool IsAjaxRequest(HttpRequest request) { if (request == null) { throw new ArgumentNul ...
- Cacheable key collision with DefaultKeyGenerator
The default is to use the hashcode of each parameter and create another (32-bit) hash code. Obviousl ...
- AlsaInfo
这是一个不能不说的故事. 我装了Ubuntu以后,耳机一直不能用. 查了各种资料也搞不定. DEBUG声音问题时有一个重要的参考就是AlsaInfo,里面详细列出了关于声音的各种配置信息. 如何获得这 ...
- ACM程序对拍
有时候在OJ刷题目的时候,总是会遇到不知名bug,题目总不能AC,自己测试的一些数据又都能得出正确的结果,又或是直接暴力会TLE,改了算法,但是仍然WA,这时候进行程序对拍测试数据不失为一个好办法.程 ...