最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

PDO增删查改操作类_MySQL

来源:动视网 责编:小采 时间:2020-11-09 19:59:10
文档

PDO增删查改操作类_MySQL

PDO增删查改操作类_MySQL:毕竟入门不久,之前写PHP+MySQL操作都是直接用原生PHP连接数据库进行操作,后来才知道还有PDO这种东西。PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询
推荐度:
导读PDO增删查改操作类_MySQL:毕竟入门不久,之前写PHP+MySQL操作都是直接用原生PHP连接数据库进行操作,后来才知道还有PDO这种东西。PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询


毕竟入门不久,之前写PHP+MySQL操作都是直接用原生PHP连接数据库进行操作,后来才知道还有PDO这种东西。

PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据。

下面是刚开始学PDO写的一个类,目前还不了解PDO跟原生比,有什么明显的优点,先把基本操作搞清楚,然后慢慢来。增删查改已满足:

/*** @abstract PDO study: PDO操作MySQL增删查改类* @date 2014/06/30* @author Silov[bluebird237@gmail.com]*/class mysqlPdoClass{	private $db;	private $db_name = 'study';//	private $db_serv;	private $db_user = 'root';	private $db_pass = 'root';	private $db_host = 'localhost';	//构造函数以及连接数据库	public function __construct( $username = 'root' , $password = 'root' , $connect = 'false'){	$this->db_serv = "mysql:dbname=".$this->db_name.";host=".$this->db_host.";charset=utf-8";	$this->db_user = $username;	$this->db_pass = $password;	}	//管理数据库,析构函数	public function __destruct(){	$this->db->close();	$this->db = null;	}	//执行SQL语句,返回值为sql执行结果	public function run_query($sql){	$this->db = new PDO($this->db_serv, $this->db_user, $this->db_pass);	$row = $this->db->query($sql);	$row->setFetchMode(PDO::FETCH_ASSOC);	//设置查询结果显示为键值对数组模式	return $row;	}	//执行SQL语句,返回值为sql影响行数	public function run_exec($sql){	$this->db = new PDO($this->db_serv, $this->db_user, $this->db_pass);	return $this->db->exec($sql);	}	/**	* @abstract 插入操作	* @param 	$table:表名; $data:插入数据键值对数组; 	* @return 	返回值:插入结果,boolean	*/	public function data_insert($table, $data, $return = true,$debug=false){	if(!$table) {	return false;	}	$fields = array();	$values = array();	foreach ($data as $field => $value){	$fields[] = '`'.$field.'`';	$values[] = "'".addslashes($value)."'";	}	if(empty($fields) || empty($values)) {	return false;	}	$sql = 'INSERT INTO `'.$table.'` 	('.join(',',$fields).') 	VALUES ('.join(',',$values).')';	if($debug){	return $sql;	}	$query = $this->run_exec($sql);	return $return ? $this->db->lastInsertId() : $query;	}	/**	* @abstract 更新操作	* @param 	$table:表名; $condition:更新查询条件; $data:更新数据键值对数组; $limit:更新数据条数上限	*	$debug:测试时给true,则不执行update,直接返回完整的sql语句	* @return 	返回值:插入结果,boolean	*/	public function data_update($table, $condition, $data, $limit = 1,$debug=false) {	if(!$table) {	return false;	}	$set = array();	foreach ($data as $field => $value) {	$set[] = '`'.$field.'`='."'".addslashes($value)."'";	}	if(empty($set)) {	return false;	}	$sql = 'UPDATE `'.$table.'` 	SET '.join(',',$set).' 	WHERE '.$condition.' '.	($limit ? 'LIMIT '.$limit : '');	if($debug){	return $sql;	}	return $this->run_exec($sql);	}	/**	* @abstract 查询单个字段值	* @param 	$sql:sql语句	* @return 	返回值:string	*/	public function getOne($sql){	$row = $this->run_query($sql);	$data = $row->fetch();	$data = array_shift($data);	return $data;	}	/**	* @abstract 查询单条记录,多个字段	* @param 	$sql:sql语句	* @return 	返回值:键值对数组	*/	public function getRow($sql){	$row = $this->run_query($sql);	$data = $row->fetch();	return $data;	}	/**	* @abstract 查询多条记录	* @param 	$sql:sql语句	* @return 	返回值:以键值对数组为元素的数组	*/	public function getRows($sql){	$row = $this->run_query($sql);	$data = $row->fetchAll();	return $data;	}}

文档

PDO增删查改操作类_MySQL

PDO增删查改操作类_MySQL:毕竟入门不久,之前写PHP+MySQL操作都是直接用原生PHP连接数据库进行操作,后来才知道还有PDO这种东西。PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top