PHP 开发中数据库及其相关软件的选型考虑 |
PHP 版本各异,已经 停留 晋级开发的有 4.0 系列的 4.4.x,但现在还有 部分生产环境在跑这个版本,需求 接续 保护代码 。PHP 5.0 系列是现在开发和 利用的主流版本,有 5.1.x 和 5.2.x 系列 。PHP 6.0 当前还是试用版本,用 PHP 开发软件产品的人现在 可以预先作兼容性测试 。 PHP 支撑的数据库众多,包括 PHP 本身自带的数据库驱动组件,例如 mysql.dll、oci_oracle 等 。PHP 从 5.1 版本以后正在力推其通用的数据库驱动组件 PDO,通过这个高度 形象的数据库存取组件,PHP 可以 支撑当前绝大多数数据库产品,并且这个数量还在添加, 存在极大的 扩大性 。而第三方厂家很早就在开发 ADODB 数据库存取组件,现在 依旧在 接续发展中 。 PHP 本身 支撑的数据库组件,当前最 风行的是 MySQL 组件 。PHP4.0 和 5.0 版本对 Oracle 的 支撑 使用了不同的函数组,5.0 兼容 4.0,但函数名已经改换了 。PHP4.0 用的是 OCILogon()、OCIParse()、OCIExecute()、OCIFetchInto()等函数 。而 PHP5.0 用的是 oci_connect()、oci_parse、oci_bind_by_name()、oci_execute()、oci_fetch_all()等等函数,能看出来是向 MySQL 的函数命名 聚拢 。这些函数是用 C 语言对 PHP 进行 扩大开发的, 实际上效率最高,但 兴许由于 材料不足等缘由, 使用的人 仿佛并不见多 。其针对 Oracle 表的分页代码等,也 比较复杂 。 而 ADODB 组件和 Windows 下 ASP.NET 使用的 ADO 组件包装 几乎是 如出一辙的,做过 ASP/ASP.NET + ACCESS/MS-SQLServer 开发的人应该似曾相识,很方便上手 。所以,用 PHP 做 MS-SQLServer 或 oracle 开发,ADODB 应该是考量之列 。ADODB 对 PHP 的 4.0 和 5.0 版本均 支撑,而 PDO 仅仅 支撑 PHP 的 5.1 以上版本,这丝毫也应该考量,做项 目标问题不大,做产品的,就要考量版本的 实用性和软件的部署环境了 。 一段 PHP 使用 ADODB 组件存取 Oracle9i 数据库的代码示例: <?php require_once(”adodb/adodb.inc.php”); //包括ADODB类库 $db = ADONewConnection(”oci8″); //指定Oracle8.0以上数据库 $db->Connect(”mydb9″, “scott”, “tiger”); //三个参数分别是数据库网络服务名、消费者( 方案)和密码 $rs = $db->Execute(”select * from emp”); //执行SQL语句 //取记录中的数据 while (!$rs->EOF) { echo $rs->fields[JOB] .’<br>’; $rs->MoveNext(); } ?> |