基于Flex与amfphp进行程序开发是一件很酷的事。终于不用再为了界面丑陋而烦恼了。网上对于amfphp与数据库的连接介绍的很少,英方的资料也不多。 关于amfphp连接数据库,很多例子给的都是直接在程序进行数据库连接。这样在开发大应用的时候,就会有很多问题。多数情况,我们都是集中存放数据库连接信息。还要考虑不同数据库间切换问题。不能每个services都写数据库的连接。amfphp可以做到这一点。在amfphp中,对于我们连接数据库来说,最实用的就是它的globals.php文件。在这个文件里可以设置数据库的主机、用户名等全局信息。 有两三年没有写PHP程序了,最近又重新看PHP语言,真是进步很多啊,特别是pdo的加入。从php5.1开始,php内部默认加载了pdo数据库操作库,听说从php6开始,php只支持pdo进行数据库的操作。真是一个不错的发展,终于可以不用面对那么多不同数据库操作的方法。本文介绍的amfphp连接数据库的方式就是基于pdo进行连接。1,在amfphp根目录下globals.php中加入下面的代码:
define ( " DB_USER " , " root " ); define ( " DB_PASS " , "" ); define ( " DB_DSN " , " mysql:host=localhost;dbname=test " ); define ( " AMFPHP_SERVICES " , realpath ( dirname ( __FILE__ )) . " /services/ " ); 2,在amfphp/services中编写一个公共的数据库连接调用程序。 <? php // 基类 class BaseAction { var $DB ; function BaseAction() { } function getConn(){ $this -> DB = new PDO(DB_DSN , DB_USER , DB_PASS); } } ?> 3,编写你自己的services服务程序。 如,写一个获取全部用户数据的服务 <? php require_once (AMFPHP_SERVICES . " daily/BaseAction.php " ); class UserAction extends BaseAction { function getUsers () { $sql = ' SELECT * from users ' ; $this -> getConn(); $rs = $this -> DB -> query( $sql ); return ( $rs ); }} ?> 三步简单搞定,在浏览器中通过http://localhost/amfphp/browser/测试一下获取用户的服务吧。