仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1275|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网页编程之PHP ADOdb利用手册:ADOdb装置与Mysql连...

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:35:26 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
从刚开始练习的PHP基础语法练习,到PHP语言在WEB中的应用,再到实际的项目开发,如留言版,相册系统,中小型公司网站系统,以及期间做过的有关团队合作的小游戏,让我受益匪浅,学到了很多。     在PHP网站开辟中,针对数据库平台移植性的处理计划,之前引见过PEAR DB类装置利用的PHP教程,其实利用PHP ADOdb类库也是一种很好的处理计划,其撑持的数据库引擎更多。
  作为PHP ADOdb利用手册开篇文章,次要引见利用PHP ADOdb类库具有哪些长处,PHP ADOdb类库的根基装置利用办法,和利用PHP ADOdb创立Mysql数据库毗连的几种办法。
利用PHP ADOdb的长处
  1、与PHP联合好,速度快
  2、扩大性好,关于windows平台的法式员来讲易于把握,由于和Microsoft’s ADO的类库对照相似
  3、利用起来轻易上手
  4、每一个版本都是在Access, MySQL, PostgreSQL, MS SQL, Oracle 11g上自力测试,质量包管,撑持多种数据库。
  5、PHP4版本撑持利用PHP ADOdb类库来存储session变量,便于扩大和移植
PHP ADOdb类库的相干文件申明
  Adodb.inc.php为次要文件,利用adodb类时,只需include这个文件便可
  Adodb-*.inc.php是特定的数据库驱动法式代码
  Test.php包括测试adodb类库的测试数据库列表,在tests目次下
  Adodb-session.php是PHP4中的session 处置代码
  Testdatabases.inc.php包括使用于测试的数据库列表,被Test.php include
  tute.htm是PHP ADOdbadodb类英文版利用教程。
PHP ADOdb类库的根基装置利用办法
  1、起首需求下载PHP ADOdb类库,以后ADOdb类库版本为ADOdb5
  adodb类库下载地址
  2、入手下手PHP ADOdb类库装置
  PHP ADOdb类库装置次要有两种体例,一种是包括完全的源代码,另外一种最小化装置体例。
  起首确保运转的PHP版本在4.0.5以上,然后解紧缩PHP ADOdb类库文件至web办事器的相干目次,PHP ADOdb类库装置就完成了。检查PHP运转情况设置装备摆设教程
  PHP ADOdb类库最小化装置体例
  在最小化装置PHP ADOdb类库时必需包括以下文件
  adodb.inc.php
  adodb-lib.inc.php
  adodb-time.inc.php
  drivers/adodb-$database.inc.php
  license.txt
  adodb-php4.inc.php
  adodb-iterator.inc.php
  装置可选项:
  adodb-error.inc.php and lang/adodb-$lang.inc.php (可以使用MetaError())
  adodb-csvlib.inc.php (假如你盘算利用缓存纪录,需求用到CacheExecute()等)
  adodb-exceptions.inc.php 和 adodb-errorhandler.inc.php (假如你利用adodb处置毛病或PHP5中的毛病异常).
  adodb-active-record.inc.php (Active Records 号称可以将数据库中的表和纪录与当地的PHP对象自力开来,让法式员将更多的精神集中在数据处置上,而不是SQL语句,MVC的滋味,呵呵)。
  在完成PHP ADOdb类库的装置任务后,咱们入手下手PHP ADOdb类库的利用之旅。
PHP ADOdb利用之Mysql数据库毗连创立办法
  PHP ADOdb类库撑持多品种型的数据库,本教程起首引见最根基的利用PHP ADOdb类库与Mysql数据库创立毗连(connect)的办法,与PEAR DB类库相似,PHP ADOdb类库创立Mysql数据库毗连(connect)也有两种办法,一种利用ADONewConnection和Connect函数创立毗连,一种利用DSN创立毗连。若何利用PEAR DB类?
利用PHP ADOdb创立Mysql毗连办法一
1
2
3
4
5
6
7
8
9
10
11
<?
  include&#40;'adodb5/adodb.inc.php'&#41;;
  $dbdriver = 'mysql';
  $db = ADONewConnection&#40;$dbdriver&#41;;
  $db->debug = true;//调试,显示详细的SQL语句
  $db->Connect&#40;'localhost', 'root', '123456', 'test'&#41;;
  $rs = $db->Execute&#40;'select * from leapsoul'&#41;;
  print "<pre>";
  print_r&#40;$rs->GetRows&#40;&#41;&#41;;
  print "</pre>";
?> 正文
1、在利用PHP ADOdb类库创立Mysql数据库毗连时,你需求利用PHP ADOdb类库的ADONewConnection($driver)函数创立一个毗连,你可以选择创立哪一种数据库,好比Access等,这里我利用Mysql数据库创立毗连。
2、然后你需求决意是利用永世性毗连仍是非永世毗连,永世毗连速度更快,数据库毗连不会封闭除非你利用close()函数;非永世毗连尽快占用的资本少,然而风险在于数据库和web办事器的负荷会对照重。你可以依据项目标详细需求自行决意。
3、然后经由过程Execute函数履行SQL语句,再以数组布局显示查询leapsoul表中关于www.leapsoul.cn的相干信息。
常识点
1、NewADOConnection($driver)是ADONewConnection($driver)的别号,功效一样,创立毗连时,ADONewConnection($dbdriver)与&ADONewConnection($dbdriver)没啥区分。
2、永世毗连利用$conn->PConnect(),非永世利用$conn->Connect(),有些数据库也撑持NConnect(),此函数会强迫创立新的数据库毗连
3、假如你同时创立了永世和非永世两种毗连,并利用不异的userid和password,PHP将会同享统一个毗连,当它们毗连分歧数据库时,会呈现成绩,处理办法是对分歧的数据库老是利用分歧的userid或利用NConnect()
利用PHP ADOdb创立Mysql毗连办法二
PHP ADOdb类库从4.51版本入手下手撑持以DSN体例毗连数据库
DSN格局以下
1
$driver://$username:$password@hostname/$database?options[=value]   options次要有以下选项
  一切数据库都撑持的选项:’persist’, ‘persistent’, ‘debug’, ‘fetchmode’, ‘new’ , ‘cachesecs’, ‘memcache’
  Interbase/Firebird:’dialect’,'charset’,'buffers’,'role’
  M’soft ADO:’charpage’
  MySQL:’clientflags’
  MySQLi:’port’, ’socket’, ‘clientflags’
  Oci8:’nls_date_format’,'charset’
  上述选项假如options的value没有赋值,则默许值为1
  cachesecs决意了当CacheExecute()和CacheSelectLimit()函数被挪用,同时这两个函数又没有设定cache-time参数值时,recordsets缓存几何秒,默许缓存3600秒
  memcache界说了memcache的主机地址,端口和是不是利用紧缩机制。
  cachesecs和memcache两个参数是从PHP ADOdb 5.09版本入手下手增添的。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?
  include&#40;'adodb5/adodb.inc.php'&#41;;

  #非永世毗连体例
  $dsn = 'mysql://root:123456@localhost/test';
  $db = NewADOConnection&#40;$dsn&#41;;
  if &#40;!$db&#41; die&#40;"Connection failed"&#41;;

  # 永世毗连
  //$dsn2 = 'mysql://root:pwd@localhost/mydb?persist';

  # 非永世毗连,数据库端口为3000
  // $dsn2 = 'mysqli://root:pwd@localhost/mydb?persist=0&port=3000';

  $db->debug = true;

  $rs = $db->Execute&#40;'select * from leapsoul'&#41;;

  print "<pre>";
  print_r&#40;$rs->GetRows&#40;&#41;&#41;;
  print "</pre>";
?> 常识点
  利用DSN体例毗连数据库时NewADOConnection()外部挪用Connect()或PConnect()函数,假如毗连掉败,则前往False
  至此,在完成PHP ADOdb类库装置后,利用PHP ADOdb类库创立Mysql数据库毗连的办法就引见完了,大局部数据库创立毗连的办法与Mysql数据库创立毗连办法是一样的,下次将会引见PHP ADOdb利用手册之Access等数据库的毗连办法。
  :PHP网站开辟教程-leapsoul.cn版权一切,转载时请以链接模式注明原始出处及本声明,感谢。
根据功能来进行封装等。很多的不懂,在使用搜索引擎查找,或者请教老师和在老师详细的讲解、指导下,都能顺利解决。
山那边是海 该用户已被删除
沙发
 楼主| 发表于 2015-3-2 08:02:28 | 显示全部楼层
兴趣是最好的老师,百度是最好的词典。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-31 10:06

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表