php中mysql mysqli pdo扩展库

1 篇文章 0 订阅

php中mysql mysqli pdo扩展库

mysql:面向过程操作mysql数据库

mysqli:面向对象操作mysql数据库

pdo:面向对象操作,但不一定是mysql数据库,便于项目的数据库移值。


mysql扩展库

以下是mysql经常使用到的函数

mysql_connect(),mysql_query(),mysql_affected_rows()

mysql_fetch_array() 关联和数字键值对数组 || mysql_fetch_assoc()  关联数组|| mysql_fetch_row() 索引数组
mysql_free_result(),mysql_close()

操作mysql基本步骤


    
    ';
    }
    /**
     * 第五步 释放资源
     */
    mysql_free_result ( $result );
    mysql_close ( $link );
?>
用mysql扩展库封装成面向对象

     
     host = $host;
			$this->port = $port;
			$this->username	= $username;
			$this->password = $password;
			$this->charset = $charset;
			$this->db = $db;
			$this->prefix = $prefix;
			/**连接数据库**/
			$this->link = @mysql_connect($this->host . ':' . $this->port,$this->username,$this->password) or exit(mysql_error());
			/**设置字符集**/
			mysql_query('set names '.$this->charset, $this->link) or exit(mysql_error());
			/**选择数据库**/
			mysql_query('use '.$this->db, $this->link) or exit(mysql_error());
		}
		
		public function __destruct(){
			/*释放连接*/
			if(is_resource($this->link)){ //因为继承后有可能parent::__destruct()
				mysql_close ( $this->link);
			}	
		}

		/**增删改查**/
		/* function 增加数据
		 * return int 返回id
		 */
		public function DB_insert($sql){
			$this->DB_que($sql);
			return mysql_insert_id($this->link);
		}

		/* function 删除数据
		 * return int 受影响的行数
		 */
		public function DB_delete($sql){
			$this->DB_que($sql);
			return mysql_affected_rows($this->link);
		}

		/* function 更新数据
		 * return int 受影响的行数
		 */
		public function DB_update($sql){
			$this->DB_que($sql);
			return mysql_affected_rows($this->link);
		}

		/* functio 查询数据
		 * return arr[][] 若查询语句为空 则返回NULL
		 */
		public function DB_select($sql){
			$res = $this->DB_que($sql);
			while($row = mysql_fetch_assoc($res)){
				$arr[] = $row;
			}
			mysql_free_result($res);
			return isset($arr)? $arr:NULL;
		}

		/*	fucntion 查询一行数据
		 *	return arr[] 若查询语句为空 则返回false
		 */
		public function DB_getrow($sql){
			$res = $this->DB_que($sql);
			$row = mysql_fetch_assoc($res);
			mysql_free_result($res);
			return $row;
		}

		/**封装连接数据库**/
		private function DB_connect(){
		}

		/**封装sql语句执行函数
		* @ return 执行结果 若出错停止执行并报错
		**/
		private function DB_que($sql){
			($res = mysql_query( $sql )) or exit(mysql_error());
			return $res;
		}

	}

?>

mysqli:只是封装成面向对象。这里就不说了。
PDO:一样是面向对象。
代码案例

     
      getMessage ();
    }

	 $sql = 'select * from t1';
	 $stmt = $dbh->query($sql);
	 $row = $stmt->fetch();
	 var_dump($row);
	 
?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值