PHP通过Sql生成带特定索引的数组

虽不明,但觉厉。

不明白原理,从别人代码中看到的,蛮好用,不过似乎性能不好:

SELECT id, sum(rmb) AS rmb, sum(device) AS device
FROM log_table
WHERE date>'2012-10-20'
GROUP BY id

这样一段Sql,用PHP自带的pdo这样请求:

$result = $dbh->query($sql)->fetchAll(PDO::FETCH_ASSOC|PDO::FETCH_UNIQUE|PDO::FETCH_GROUP);

可以得到一个数组,使用sql中第一个字段也就是id为索引,每个元素为一个含两个属性(rmb, device)的对象。换成json写法大概是这样:

// 以前
[{id: 1, rmb: 1, device: 1}, {id: 2, rmb: 2, device:2}]

// 现在
{'1': {rmb: 1, device: 1}, '2': {rmb: 2, device: 2}}

这样再操作会方便很多。

浅谈Git在Web部署上的运用

近期尝试在服务器上实现Git部署方式,发现还蛮简单,效果也不错,写篇日志记录下。

Git是个好东西自不用说,对比SVN来,它有以下好处:

  1. 分支操作速度快,便于制定开发流程
  2. 每个节点都是完整的代码库,可以不受中心版本库的制约
  3. 使用开源类库框架一样可以随心所欲修改并且进行版本管理

做Web开发的时候,我一直想用Git进行部署。因为之前要么FTP,要么直接在服务器上修改,都会产生各种问题。最近尝试了下,发现还挺简单,记录下来。

继续阅读“浅谈Git在Web部署上的运用”

Ubuntu下使用Tasksel安装LAMP

做个笔记,在Ubuntu下使用tasksel安装LAMP。环境是Virtual Box + Ubuntu 11.10 + 10G硬盘 + 1G内存 + 无限CPU。

最近开始学习搞服务器,各种不会,哎呀,学习的快感还满足的。

做个笔记,在Ubuntu下使用tasksel安装LAMP。环境是Virtual Box + Ubuntu 11.10 + 10G硬盘 + 1G内存 + 无限CPU。

继续阅读“Ubuntu下使用Tasksel安装LAMP”