使用Yaf框架怎么封装一个MySQL数据库操作类

  介绍

使用Yaf框架怎么封装一个MySQL数据库操作类?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

<强>使用PDO封装MySQL操作

class  Db_Mysql   {   private 才能;_options 美元;=,数组();   private 才能;$ db;   private 才能;$声明;   private 才能;_fetchMode 美元;=,2;   ,/* *   ,,*,构造函数   ,,*   ,,*,@param  string  $主机   ,,*,@param  string  $用户名   ,,*,@param  string  $密码   ,,*,@param  string  dbname美元   ,,*,@param  string  charset美元   ,,*/private 才能;function  __construct(主机美元,,用户名,密码,美元,美元dbname,,字符集美元)   {才能   ,,,//初始化数据连接   ,,,try  {   ,,,,,dns 美元;=,& # 39;mysql: dbname=& # 39;,只dbname 美元;只& # 39;;主机=& # 39;,只美元主机;   ,,,,,这个→美元db =, new  PDO (dns美元,,用户名,密码,美元,数组(PDO: ATTR_PERSISTENT =祝辞,真的,,PDO:: ATTR_AUTOCOMMIT =祝辞,1));   ,,,,,这个→美元db→查询(& # 39;SET  NAMES  & # 39;,只字符集美元);   ,,,},catch  (PDOException  $ e), {   ,,,,,echo 头(“内容类型:text/html;, charset=utf-8");   ,,,,,echo  & # 39; & lt; pre /祝辞;& # 39;;   ,,,,,echo  & # 39; & lt; b> Connection 失败:& lt;/b> & # 39;,只$ e→getMessage ();   ,,,,,死;   ,,,}   ,,}   ,/* *   ,,*,调用初始化MYSQL连接   ,,*   ,,*,@param  string 配置美元   ,,*,@return  Aomp_Db_Mysql   ,,*/static 才能public  function  getInstance ($ config =, & # 39; & # 39;)   {才能   ,,,host 美元;=,美元配置→主机;   ,,,username 美元;=,美元配置→用户名;   ,,,password 美元;=,美元配置→密码;   ,,,dbname 美元;=,美元配置→dbname;   ,,,charset 美元;=,美元配置→字符集;   ,,,db 美元;=,new 自我(主机美元,,用户名,密码,美元,美元dbname,,字符集美元);   ,,,return  $ db;   ,,}   ,/* *   ,,*,获取多条数据   ,,*   ,,*,@param  string  $ sql   ,,*,@param  array 绑定美元   ,,*,@param  string  fetchMode美元   ,,*,@return  multitype:   ,,*/public 才能;function  fetchAll (sql,美元,美元bind =,数组(),,fetchMode 美元;=,null)   {才能   ,,,如果($ fetchMode ===, NULL) {   ,,,,,fetchMode 美元;=,$ this→_fetchMode;   ,,,}   ,,,stmt 美元;=,$ this→查询($ sql,绑定美元);   ,,,res 美元;=,支撑美元→fetchAll ($ fetchMode);   ,,,return  res美元;   ,,}   ,/* *   ,,*,获取单条数据   ,,*   ,,*,@param  string  $ sql   ,,*,@param  array 绑定美元   ,,*,@param  string  fetchMode美元   ,,*,@return 混合   ,,*/public 才能;function  fetchRow (sql,美元,array  bind 美元;=,数组(),,fetchMode 美元;=,null)   {才能   ,,,if  ($ fetchMode ===, null), {   ,,,,,fetchMode 美元;=,$ this→_fetchMode;   ,,,}   ,,,stmt 美元;=,$ this→查询($ sql,绑定美元);   ,,,result 美元;=,支撑美元→获取($ fetchMode);   ,,,return 结果美元;   ,,}   ,/* *   ,,*,获取统计或者ID   ,,*   ,,*,@param  string  $ sql   ,,*,@param  array 绑定美元   ,,*,@return 字符串   ,,*/public 才能;function  fetchOne (sql,美元,array  bind 美元;=,数组())   {才能   ,,,stmt 美元;=,$ this→查询($ sql,绑定美元);   ,,,res 美元;=,支撑美元→fetchColumn (0);   ,,,return  res美元;   ,,}   ,/* *   ,,*,增加   ,,*   ,,*,@param  string  $表   ,,*,@param  array 绑定美元   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

使用Yaf框架怎么封装一个MySQL数据库操作类