php实现mysql封装类示例

时间:2022-06-25 16:52:13

php封装mysql类

 

复制代码 代码如下:


<?php

 

class Mysql {
 private $host;
 private $user;
 private $pwd;
 private $dbName;
 private $charset;

 private $conn = null;

 public function __construct() {

  $this->host = 'localhost';
  $this->user = 'root';
  $this->pwd = 'root';
  $this->dbName = 'test';

  $this->connect($this->host,$this->user,$this->pwd);

  $this->switchDb($this->dbName);

  $this->setChar($this->charset);
 }

 //负责链接
 private function connect($h,$u,$p) {
  $conn = mysql_connect($h,$u,$p);
  $this->conn = $conn;
 }

 //负责切换数据库
 public function switchDb($db) {
  $sql = 'use' . $db;
  $this->query($sql);
 }

 //负责设置字符集
 public function setChar($char) {
  $sql = 'set names' . $char;
  $this->query($sql);
 }

 //负责发送sql查询
 public function query($sql) {
  return mysql_query($sql,$this->conn);
 }

 //负责获取多行多列的select结果
 public function getAll($sql) {
  $list = array();

  $rs = $this->query($sql);
  if (!$rs) {
   return false;
  }

  while ($row = mysql_fetch_assoc($rs)) {
   $list[] = $row;
  }

  return $list;
 }

 public function getRow($sql) {
  $rs = $this->query($sql);

  if(!$rs) {
   return false;
  }

  return mysql_fetch_assoc($rs);
 }

 public function getOne($sql) {
  $rs = $this->query($sql);
  if (!$rs) {
   return false;
  }
  return mysql_fetch_assoc($rs);

  return $row[0];
 }

 public function close() {
  mysql_close($this->conn);
 }
}

echo '<pre>';
$mysql = new Mysql();
print_r($mysql);

$sql = "insert into stu values (4,'wangwu','99998')";

if($mysql->query($sql)){
 echo "query成功";
}else {
 echo "失败";
}

echo "<br />";

$sql = "select * from stu";
$arr = $mysql->getAll($sql);

print_r($arr);
?>