PHP脚本数据库功能详解(下)

  •   2009-07-31/21:11
  • 用类加快PHP的数据库开发
    数据库的访问函数较多,使用不当会降低效率,甚至导致错误。而PHP的本身就是开放的和可扩充的,很多人为它开发各种功能的源代码。每一个PHP程序员都应该善于继承他人的成果,节省时间和精力。站在巨人的肩膀上,才能看得更远。当然,你也可以把你的代码共享出来,体会自己的劳动被承认和创造价值而带来的成就感。

    使用数据库类,可以使我们完全不必考虑具体的数据库类型,而专注于程序的开发上。

    众多的开发工具包中,PHPLib是性能较稳定、功能较完善的一个。PHPLib可以在http://phplib.netuse.de/ 获得。它包含了数据库的支持类。以MySQL数据库为例,PHPLib自带名为DB_Sql的类。它包装了数据库的连接、查询、取结果、数据库表的遍历等功能。

    使用数据库类,可以使我们完全不必考虑具体的数据库类型,而专注于程序的开发上。即使数据库系统类型换了,程序代码也不用改。同时,数据库类提供了完整而健壮的数据库访问方法,这可能是使用类的包装的最大的优势了。
    下面,我们就使用PHPLib提供的数据库类,来访问我们刚才建立的数据库,并对内容进行显示。

    〈?

    require "db_mysql.php";

    //包含数据库类的生成文件

    $db=new DB_Sql;

    //声明数据库类的实例

    $db-〉connect("ResumeDB","localhost", "root", "");

    //连接数据库服务器

    //提供的参数依次为:数据库名,主机名,用户名,用户密码

    if ($db-〉Link_ID)

    //判断是否正确建立连接

    {

    $db-〉query("select ID,Name,Intro FROM Resume");

    //查询

    if ($db-〉nf())

    //判断结果集是否为空

    {

    while ($db-〉next_record())

    //取得下一行记录值,直到记录集内容取完

    {

    echo "ID:", $db-〉f("ID"); //f()函数返回当前记录某个子段的值

    echo "〈br〉";

    echo "姓名:";

    $db-〉p("Name");

    //p()函数直接打印某个子段的值

    //等价于echo $db-〉f("name")

    echo "〈br〉";

    echo "简介:";

    echo $db-〉f("Intro");

    echo "〈br〉";

    echo "〈a href= "download.php?ID=".$db-〉f("ID").""〉查看Word文档〈/a〉";

    echo "〈br〉〈hr〉";

    }

    }

    $db-〉free ();

    //释放资源

    }

    ?〉

    从上面的流程可以看出,用类访问数据库的方法和直接访问数据库的方法基本相同。不同的是,这里我们调用的方法都是类的方法,而不是具体针对某种数据库的函数。由于代码和具体数据库类型的分离,使得当数据库系统改变的时候,我们不用改变程序代码,只要改变基类的实现方法即可。

    如果结合使用PHPLib模板进行设计的话,即可实现程序与显示的分离。也将使得程序结构清晰,网页美工设计制作方便。

    简便的用法、合理的任务分配、合乎思维的对象包装,将使得网站开发效率大大提高。

    附:代码测试平台
    以上程序代码全部在下面的平台测试通过

    RedHat Linux 6.1+Apache1.3.12+

    PHP4.0+MySql3.22.32

    数据库的安装配置过程为:

    cd /usr/local/src/mysql*

    ./configure --refix=/usr/local/mysql

    make

    make install

    Apache的安装配置过程为:

    cd /usr/local/src/apache*

    ./configure --prefix=/usr/local/apache --enable-shared=max

    make

    make install

    PHP的安装配置过程为:

    cd /usr/local/src/php*

    ./configure --with-apxs=/usr/local/apache/bin/apxs  

    --with-config-file-path=/usr/local/

    apache/conf  

    --with-mysql=/usr/local/mysql  

    --enable-debug=no  

    --enable-track-vars

    php.ini配置过程为:

    拷贝php.ini-dist到/usr/local/

    apache/conf/php.ini

    编辑httpd.conf,把下面两行的注释去掉

    AddType application/x-httpd-php .php .php3

    AddType application/x-httpd-php-source .phps

    <<全文完>>



    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多