> 백엔드 개발 > PHP 튜토리얼 > 데이터베이스를 호출하는 PHP 클래스

데이터베이스를 호출하는 PHP 클래스

WBOY
풀어 주다: 2016-07-25 09:10:41
원래의
960명이 탐색했습니다.
  1. class DataBase

  2. {
  3. var $pConnect=FALSE;//장기간 사용할지 여부 연결
  4. var $mHost;//데이터베이스 호스트
  5. var $mDatabase;
  6. var $db; //데이터베이스
  7. var $mUser;//데이터베이스 사용자 이름
  8. var $mPwd;// 데이터베이스 사용자 비밀번호
  9. var $mConn;//연결 ID
  10. var $result;// 쿼리 명령 실행 결과의 리소스 ID
  11. var $num_rows;// 반환된 항목 수
  12. var $insert_id;/ / 마지막으로 사용한 INSERT 명령어의 ID를 반환
  13. var $affected_rows; // 쿼리 명령어의 영향을 받은 컬럼 개수를 반환
  14. // INSERT, UPDATE의 영향을 받은 컬럼(행)의 개수 또는 삭제.
  15. // where 없이 삭제한 후 0을 반환합니다.
  16. //생성자
  17. 공개 함수 __construct($host,$user,$pwd,$db)
  18. {
  19. $this ->mHost =$host;
  20. $this->mUser=$user;
  21. $this->mPwd=$pwd;
  22. $this->db=$db
  23. }
  24. //데이터베이스 연결
  25. 공용 함수 connect()
  26. {
  27. if($this->pConnect)
  28. $this->mConn=mysql_pconnect($this- >mHost, $this->mUser,$this->mPwd);//긴 연결
  29. else
  30. $this->mConn=mysql_connect($this->mHost,$this-> ;mUser,$ this->mPwd);//짧은 연결

  31. if(!$this->mConn) $this->dbhalt("데이터베이스에 연결할 수 없습니다!") ;

  32. if($this->db=="") $this->db=$this->dbDatabase;
  33. if(!mysql_select_db($this->db,$ this-> ;mConn))
  34. $this->dbhalt("데이터베이스를 사용할 수 없습니다!");
  35. } // eof#dbconnect()

  36. // 데이터베이스 변경

  37. 공개 함수 dbChange($db){
  38. $this->db=$db;
  39. $this->connect();
  40. }

  41. public functionexecute($sql){
  42. $this->result=mysql_query($sql);
  43. return $this-> ;
  44. }

  45. //배열 가져오기 - 인덱스 및 연관

  46. 공개 함수 fetchArray($resultType=MYSQL_BOTH)
  47. {
  48. return mysql_fetch_array($this - >result,$resultType);
  49. }
  50. //연관 배열 가져오기
  51. public function fetchAssoc()
  52. {
  53. return mysql_fetch_assoc($this->result);
  54. }
  55. //숫자 인덱스 배열 가져오기
  56. public function fetchIndexArray()
  57. {
  58. return mysql_fetch_row($this->result);
  59. }
  60. //객체 배열 가져오기
  61. public function fetchObject()
  62. {
  63. return mysql_fetch_object($this->result);
  64. }
  65. //숫자 반환 레코드 행
  66. function numRows()
  67. {
  68. return mysql_num_rows($this->result);
  69. }

  70. //모든 데이터베이스 이름 반환 호스트

  71. 공용 함수 dbNames()
  72. {
  73. $rsPtr=mysql_list_dbs($this->mConn);
  74. $i=0;
  75. $cnt=mysql_num_rows($rsPtr) ;
  76. while ($i {
  77. $rs[]=mysql_db_name($rsPtr,$i);
  78. $i ;
  79. }
  80. return $rs;
  81. }< ;/p>
  82. function dbhalt($errmsg){

  83. $msg="데이터베이스에 문제가 있습니다!";
  84. $msg=$errmsg;
  85. echo "$msg";
  86. die();
  87. }

  88. //삭제

  89. 함수 delete($sql){
  90. $result= $this->execute($sql ,$dbbase);
  91. $this->affected_rows=mysql_affected_rows($this->dbLink);
  92. $this->free_result($result);
  93. return $this->affected_rows;
  94. }

  95. //

  96. 함수 추가($sql){
  97. $result=$this->execute ($sql,$dbbase);
  98. $this->insert_id=mysql_insert_id($this->dbLink);
  99. $this->free_result($result);
  100. return $this-> ;insert_id;
  101. }< /p>
  102. //변경

  103. 함수 업데이트($sql){
  104. $result=$this->execute($sql,$dbbase );
  105. $this-> ;affected_rows=mysql_affected_rows($this->dbLink);
  106. $this->free_result($result);
  107. return $this->affected_rows;
  108. }
  109. // 연결 닫기
  110. function dbclose(){
  111. mysql_close($this->dbLink);
  112. }
  113. }// 클래스 종료
  114. ?> ;

코드 복사

통화 예:

  1. include "class_database.php";

  2. $mydb->connect();
  3. $mydb->execute("GBK 이름 설정 ");
  4. $mydb->execute("usrs에서 * 선택");
  5. print_r($mydb->dbNames());
  6. ?>

코드 복사


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿