PHP操作MySql封裝類
阿新 • • 發佈:2018-12-24
mysqlconfig.php
<?php
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PWD', '123456');
define('DB_CHARSET', 'UTF8');
define('DB_DBNAME', 'dingfeng');
?>
mysqlfunction.php
<?php class mysql{ /** * 連線MYSQL函式 * 連線MYSQL函式,通過常量的形式來連線資料庫 * 自定義配置檔案,配置檔案中自定義常量,包含需要使用的資訊 * @return resource */ function connect2 (){ //連線mysql
[email protected]_connect(DB_HOST,DB_USER,DB_PWD) or die ('資料庫連線失敗<br/>ERROR '.mysql_errno().':'.mysql_error()); //設定字符集 mysql_set_charset(DB_CHARSET); //開啟指定的資料庫 mysql_select_db(DB_DBNAME) or die('指定的資料庫開啟失敗'); return $link; } /* array( 'username'=>'cy', 'password'=>'123456', 'email'=>'[email protected]' ) */ /** * 插入記錄的操作 * @param array $array * @param string $table * @return boolean */ function insert($array,$table){ $keys=join(',',array_keys($array)); $values="'".join("','", array_values($array))."'"; $sql="insert {$table}({$keys}) VALUES ({$values})"; $res=mysql_query($sql); if($res){ return mysql_insert_id(); }else{ return false; } } /** * MYSQL更新操作 * @param array $array * @param string $table * @param string $where * @return number|boolean */ function update($array,$table,$where=null){ foreach ($array as $key=>$val){ $sets.=$key."='".$val."',"; } $sets=rtrim($sets,','); //去掉SQL裡的最後一個逗號 $where=$where==null?'':' WHERE '.$where; $sql="UPDATE {$table} SET {$sets} {$where}"; $res=mysql_query($sql); if ($res){ return mysql_affected_rows(); }else { return false; } } /** * 刪除記錄的操作 * @param string $table * @param string $where * @return number|boolean */ function delete($table,$where=null){ $where=$where==null?'':' WHERE '.$where; $sql="DELETE FROM {$table}{$where}"; $res=mysql_query($sql); if ($res){ return mysql_affected_rows(); }else { return false; } } /** * 查詢一條記錄 * @param string $sql * @param string $result_type * @return boolean */ function fetchOne($sql,$result_type=MYSQL_ASSOC){ $result=mysql_query($sql); if ($result && mysql_num_rows($result)>0){ return mysql_fetch_array($result,$result_type); }else { return false; } } /** * 得到表中的所有記錄 * @param string $sql * @param string $result_type * @return boolean */ function fetchAll($sql,$result_type=MYSQL_ASSOC){ $result=mysql_query($sql); if ($result && mysql_num_rows($result)>0){ while ($row=mysql_fetch_array($result,$result_type)){ $rows[]=$row; } return $rows; }else { return false; } } /**取得結果集中的記錄的條數 * @param string $sql * @return number|boolean */ function getTotalRows($sql){ $result=mysql_query($sql); if($result){ return mysql_num_rows($result); }else { return false; } } /**釋放結果集 * @param resource $result * @return boolean */ function freeResult($result){ return mysql_free_result($result); } /**斷開MYSQL * @param resource $link * @return boolean */ function close($link=null){ return mysql_close($link); } /**得到客戶端的資訊 * @return string */ function getClintInfo(){ return mysql_get_client_info(); } /**得到MYSQL伺服器端的資訊 * @return string */ function getServerInfo($link=null){ return mysql_get_server_info($link); } /**得到主機的資訊 * @return string */ function getHostInfo($link=null){ return mysql_get_host_info($link); } /**得到協議資訊 * @return string */ function getProtoInfo($link=null){ return mysql_get_proto_info($link); } } ?>
mysqltest.php
<?php
require_once 'mysqlfunction.php';
require_once 'mysqlconfig.php';
$db = new mysql();
$link = $db->connect2();
var_dump($link);
$sql='SELECT * FROM user';
$rows = $db->fetchAll($sql);
var_dump($rows);
?>