Baidu later decided to use PDO. As for why it chose PDO, I won’t go into details here. You can understand it yourself by going to Baidu.
Since you want to change, you need to have a commonly used database operation class, which is the so-called addition, deletion, modification, query, etc. I spent the night playing around last night and roughly came up with a prototype. The following is the code. I hope you can Give some advice.
Copy code The code is as follows:
/*
Author: Hu Rui
Date: 2011/03/19
Email: hooray0905@foxmail.com
20110319
Common database operations, such as: add, delete, modify, query, obtain a single record, multiple records, return the latest inserted record id, Return the number of operation record rows, etc.
*/
/*
Parameter Description
int $debug Whether to enable debugging, if enabled, the sql statement will be output
int $getcount Whether to count, the return value is rows Number
int $getrow Whether to return a single record
string $table Database table
string $fields Database fields to be queried, allowed to be empty, the default is to find all
string $sqlwhere Query conditions, allowed Is empty
string $orderby sorting, allowed to be empty, defaults to id reverse order
*/
function hrSelect($debug, $getcount, $getrow, $table, $fields="*", $sqlwhere ="", $orderby="id desc"){
global $pdo;
if($debug){
if($getcount){
echo "select count(*) from $ table where 1=1 $sqlwhere order by $orderby";
}else{
echo "select $fields from $table where 1=1 $sqlwhere order by $orderby";
}
exit ;
}else{
if($getcount){
$rs = $pdo->query("select count(*) from $table where 1=1 $sqlwhere order by $orderby") ;
return $rs->fetchColumn();
}elseif($getrow){
$rs = $pdo->query("select $fields from $table where 1=1 $sqlwhere order by $orderby");
return $rs->fetch();
}else{
$rs = $pdo->query("select $fields from $table where 1=1 $sqlwhere order by $orderby");
return $rs->fetchAll();
}
}
}
/*
Parameter Description
int $debug Whether to enable debugging, if enabled, the sql statement will be output
int $execrow Whether to enable and return the number of execution entries
int $lastinsertid Whether to enable and return the last inserted record id
string $table Database table
string $fields required Fields inserted into the database
string $values The information that needs to be inserted into the database must correspond to $fields one-to-one
*/
function hrInsert($debug, $execrow, $lastinsertid, $table, $fields, $ values){
global $pdo;
if($debug){
echo "insert into $table ($fields) values ($values)";
exit;
}elseif( $execrow){
return $pdo->exec("insert into $table ($fields) values ($values)");
}elseif($lastinsertid){
return $pdo-> ;lastInsertId("insert into $table ($fields) values ($values)");
}else{
$pdo->query("insert into $table ($fields) values ($values) ");
}
}
/*
Parameter description
int $debug Whether to enable debugging, if enabled, the sql statement will be output
int $execrow Whether to enable execution and return the number of entries
string $table database table
string $set Fields and content to be updated, format: a='abc',b=2,c='2010-10-10 10:10:10'
string $sqlwhere modifies the conditions and allows empty
*/
function hrUpdate($debug, $execrow, $table, $set, $sqlwhere=""){
global $pdo;
if( $debug){
echo "update $table set $set where 1=1 $sqlwhere";
exit;
}elseif($execrow){
return $pdo->exec(" update $table set $set where 1=1 $sqlwhere");
}else{
$pdo->query("update $table set $set where 1=1 $sqlwhere");
}
}
/*
Parameter description
int $debug Whether to enable debugging, if enabled, output sql statement
int $execrow Whether to enable and return the number of execution entries
string $table database table
string $sqlwhere deletion condition, empty is allowed
*/
function hrDelete($debug, $execrow, $table, $sqlwhere=""){
global $pdo;
if ($debug){
echo "delete from $table where 1=1 $sqlwhere";
exit;
}elseif($execrow){
return $pdo->exec("delete from $table where 1=1 $sqlwhere");
}else{
$pdo->query("delete from $table where 1=1 $sqlwhere");
}
}
?>
The comments on the parameters are clearly written. If anyone needs it and doesn’t know how to use it, they can ask me directly.
http://www.bkjia.com/PHPjc/323020.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/323020.htmlTechArticleBaidu later decided to use PDO. As for why it chose PDO, I won’t say more here. You can go to Baidu and download it yourself. I understand. Since you want to change, the most basic thing is to have a commonly used database operation...