创建类的方法来连接数据库,大家来看看。解决办法

WBOY
풀어 주다: 2016-06-13 13:38:09
원래의
970명이 탐색했습니다.

创建类的方法来连接数据库,大家来看看。
代码一mysql.class.php

 class SqlTool {
 private $conn;
 private $host="127.0.0.1";
 private $user="root";
 private $password="5200";
 private $db="test";

function SqlTool(){
 $this->conn=mysql_connect($this->host,$this->user,$this->password);
 if(!$this->conn){
  die("连接数据库失败".mysql_error());
 }
 mysql_select_db($this->db,$this->conn);
 mysql_query("set names utf8");
 }
//完成select
function execute_dql($sql){

$res=mysql_query($sql);
return $res;

}
//完成update
function execute_dml($sql){
   
$b=mysql_query($sql,$this->conn);

if(!$b){
  return 0;//失败
}else {
  if(mysql_affected_rows($this->conn)>0){

return 1;//表示陈功
}else {
return 2;//没有影响到行数
}
}

}

}


?>






代码二mysql.php


header("content-type:text/html;charset=utf-8");

require_once "SqlTool.class.php";

$sql="select * from user1";
$sqlTool=new SqlTool();
//创建对象怎么不需要用调用fuction SqlTooL来连接数据库
$res=$sqlTool->execute_dql($sql);//直接调用execute_dql就可以操作数据库了?
while ($row=mysql_fetch_row($res)){
 foreach($row as $key=>$val){
  echo "--$val";
 }
 echo "
";
}




?>在代码二中,我发现了问题,创建一个对象,但是创建对象怎么不需要用调用fuction SqlTooL来连接数据库


------解决方案--------------------
SqlTool类的SqlTool方法是它的构造函数。
摘自手册上的说明:
为了实现向后兼容性,如果 PHP 5 在类中找不到 __construct() 函数,它就会尝试寻找旧式的构造函数,也就是和类同名的函数。
可见,这个类并不咋滴,老掉牙了
http://php.net/manual/zh/language.oop5.decon.php

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