3.8. console工程

大型程序往往需要做一些"长时间"的操作,比如数据导出备份,你有好几个GB的数据,导出需要几分钟甚至几十分钟,这么长时间的操作指望在 Web页面 上点击一下鼠标然后就完成是不可能的(你点击完网页然后坐着等它打圈圈?中途断网了怎么办?)。这种操作其实已经超出了 Web 的功能需求,往往我们会自己写一个脚本来做这种操作(perl, python …)。可是如果单纯的写一个脚本,我们还需要解决怎么和网站数据交互的问题,比如我们写了一个爬虫,从淘宝上把商品爬下来插入到数据库里面,然后用我们的商城作展示(做淘宝客的一定喜欢这个功能)。如果用 perl、python 来写,我们还需要另外写一套数据库访问的方法用于访问网站数据库,这实在是自找麻烦。

其实 PHP 本身就是一个非常好的脚本语言,完全没必要另外再去用 perl、python之类的东西。bzfshop 提供了一个 console 工程,你可以在 console 里面写脚本程序,并且和写 Web一样使用 bzfshop 提供的所有 Service,这大大简化了你写脚本的工作量。

[警告]

注意:以下命令都是在 Linux 下操作的,如果你是 Windows 下可能无法使用(除非你是 Windows 高手,自己配置好了 Windows 下的 PHP 命令行执行功能)

使用 console 命令:

## 进入 console 工程目录
cd console

## 查看 console 提供哪些命令
php Clip

## 查看命令帮助
php Clip help ResetData

## 执行命令,请谨慎执行这个命令,因为这个命令会把你的数据库 reset 为重新安装的数据
php Clip ResetData

图 3.8. console命令行

console命令行

关于 console 下怎么为 bzfshop 开发命令行程序请查看后面的章节。