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 数据库存取组件(http://adodb.sourceforge.net/),现在仍然在继续进展中。

    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();
  }
?>












本文转自网眼51CTO博客,原文链接:http://blog.51cto.com/itwatch/286468,如需转载请自行联系原作者

相关文章
|
17天前
|
监控 关系型数据库 MySQL
PHP与MySQL的结合:实现局域网上网行为监控软件的数据库管理
在当今信息化时代,网络安全日益成为重要的话题。为了有效监控和管理局域网上网行为,开发一个基于PHP和MySQL的数据库管理系统是一个理想的选择。本文将介绍如何结合PHP和MySQL,开发一款简单而高效的局域网上网行为监控软件,并重点关注数据库管理方面的实现。
51 0
|
23天前
|
关系型数据库 MySQL PHP
|
28天前
|
SQL 关系型数据库 MySQL
Python 数据库访问与ORM框架——打造高效开发利器
Python 作为一门广泛使用的编程语言,其在数据库访问方面也有着较为成熟的解决方案,其中ORM框架更是成为了开发者们的首选。本文将介绍 Python 中数据库访问和 ORM 框架的基本概念,以及如何使用 SQLAlchemy 这一优秀的 ORM 框架进行开发。
|
30天前
|
关系型数据库 API 数据库
Python数据库访问与ORM框架:加速开发、提升效率
在现代软件开发中,数据库是不可或缺的组成部分。本文介绍了Python中数据库访问的重要性,并探讨了ORM框架(例如SQLAlchemy)如何帮助程序员加速开发、提升效率。通过使用ORM框架,开发人员可以轻松地将Python对象映射到数据库表,并且可以通过简洁的API进行数据库操作。此外,本文还讨论了ORM框架在处理复杂查询、维护数据一致性和实现数据库迁移方面的优势。
|
1月前
|
SQL 缓存 数据库
后端开发中的数据库优化策略——提高性能和可靠性
在后端开发中,数据库是至关重要的一环。如何优化数据库,提高系统性能和可靠性,一直是后端开发者需要面对的问题。本文将介绍几个常用的数据库优化策略,包括数据结构设计、索引优化、SQL语句优化、缓存优化等方面,希望对后端开发者有所帮助。
16 2
|
1月前
|
关系型数据库 MySQL 数据库
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
26 0
|
1月前
|
SQL 数据库 C++
C++ Qt开发:Charts与数据库组件联动
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍`Charts`组件与`QSql`数据库组件的常用方法及灵活运用。在之前的文章中详细介绍了关于`QCharts`绘图组件的使用方式,本章将继续延续这个知识点,通过使用`QSql`数据库模块动态的读取某一个时间节点上的数据,当用户点击查询数据时则动态的输出该事件节点的所有数据,并将数据绘制到图形组件内,实现动态查询图形的功能。
C++ Qt开发:Charts与数据库组件联动
|
1月前
|
NoSQL 关系型数据库 MySQL
基于Python和mysql开发的商城购物管理系统分为前后端(源码+数据库+程序配置说明书+程序使用说明书)
基于Python和mysql开发的商城购物管理系统分为前后端(源码+数据库+程序配置说明书+程序使用说明书)
|
1月前
|
NoSQL 关系型数据库 MySQL
基于Python和mysql开发的BBS问答社区管理系统(源码+数据库+程序配置说明书+程序使用说明书)
基于Python和mysql开发的BBS问答社区管理系统(源码+数据库+程序配置说明书+程序使用说明书)