Creole & Propel 研究与实践(1)

Posted on 3rd September 2004 by Nio in Creole & Propel, 程序人生

Hibernate 的出现给了 Java 开发者莫大的惊喜,这个开源的 ORM(对象关系映射框架)对 JDBC 进行了轻量级的包装,使得开发人员可以使用 OO 的思想来操作关系数据库。而在 PHP 中,随着 PHP 5 的发布,OO 编程也开始慢慢完善,于是就出现了类似 Hibernate、Apache TorquePropel,其对数据库抽象层 Creole 进行了封装,试图达到 Apache Torque 的效果。在后半年中,我将抽空对其进行研究,希望能找到 PHP 的另一片天地。
image

一切之前,最为重要的当然是需要安装 PHP 5 了,由于我的 Redhat 系统中已经安装了 Apache、MySQL & PHP,所以只需重新编译安装 PHP 5 即可。在官方网站下载了 PHP 5.0.1,编译安装(xslt 等均需要用到):

$ ./configure --prefix=/usr --with-config-file-path=/etc --with-mysql=/usr/local/mysql --with-apxs=/usr/local/apache/bin/apxs  --enable-xslt  --with-xslt-sablot --with-expat-dir=/usr  --with-iconv
$ make
$ make install

Zend Engine II

PHP 安装完毕,下一步是安装 Creole:

$ pear install http://creole.phpdb.org/pear/creole-current.tgz
$ pear install http://creole.phpdb.org/pear/jargon-current.tgz

最后安装 Propel,我是直接从 CVS 获取最新代码的:

$ cvs -d :pserver:guest@cvs.tigris.org:/cvs login
  Password: [guest]
$ cvs -d :pserver:guest@cvs.tigris.org:/cvs checkout propel
$ mv propel/propel /usr/local/
$ mv propel/propel-generator /usr/local/

然后修改 php.ini 中的 include_path:

include_path="/usr/local/lib/php:/usr/local/propel/classes"

使其包含 propel 的 classes 目录路径。另外还需要注意几个 PHP 的设置参数是否正确:

ze1_compatibility_mode    Off
magic_quotes_gpc    Off
magic_quotes_sybase    Off
register_globals    Off(此参数实际上对于 Propel 不会有影响,但 Propel 并不要求其设置成 On,所以出于安全考虑,还是设置成 Off 吧)

好了,一切准备就绪,马上就可以开始我的研究工作了,嘻嘻 :D

No Comments »

No comments yet.

Leave a comment