PHP基于单例模式实现的mysql类
2016-01-09 00:00
1021 查看
本文实例讲述了PHP基于单例模式实现的mysql类。分享给大家供大家参考,具体如下:
更多关于PHP数据库操作相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《PHP基于pdo操作数据库技巧总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
php设计模式之单例模式实例分析
php单态设计模式(单例模式)实例
php利用单例模式实现日志处理类库
php设计模式之单例模式使用示例
php单例模式实现(对象只被创建一次)
php封装的连接Mysql类及用法分析
<?php defined('ACC')||exit('Access Denied'); // 封装mysql操作类,包括连接功能,及查询功能. class mysql extends absdb{ protected static $ins = null; protected $host; // 主机名 protected $user; // 用户名 protected $passwd; // 密码 protected $db; // 数据库名 protected $port; // 端口 protected $conn = null; // 在内部操作,获得一个对象 public static function getIns() { if(self::$ins === null) { self::$ins = new self(); } $conf = conf::getIns(); self::$ins->host = $conf->host; self::$ins->user = $conf->user; self::$ins->passwd = $conf->pwd; self::$ins->db = $conf->db; self::$ins->port = $conf->port; self::$ins->connect(); self::$ins->select_db(); self::$ins->setChar(); return self::$ins; } // 不让外部做new操作, protected function __construct() { } // 连接数据库 public function connect() { $this->conn = @mysql_connect($this->host,$this->user,$this->passwd,$this->port); if(!$this->conn) { $error = new Exception('数据库连不上',9); throw $error; } } // 发送sql查询 public function query($sql) { $rs = mysql_query($sql,$this->conn); if(!$rs) { log::write($sql); } return $rs; } // 封装一个getAll方法 // 参数:$sql // 返回: array,false public function getAll($sql) { $rs = $this->query($sql); if(!$rs) { return false; } $list = array(); while($row = mysql_fetch_assoc($rs)) { $list[] = $row; } return $list; } // 封装一个getRow方法 // 参数:$sql // 返回: array,false public function getRow($sql) { $rs = $this->query($sql); if(!$rs) { return false; } return mysql_fetch_assoc($rs); } // 封装一个getOne方法, // 参数: $sql // 返回: int,str(单一的值) public function getOne($sql) { $rs = $this->query($sql); if(!$rs) { return false; } $tmp = mysql_fetch_row($rs); return $tmp[0]; } // 封装一个afftect_rows()方法 // 参数:无 // 返回 int 受影响行数 public function affected_rows() { return mysql_affected_rows($this->conn); } // 返回最新生成的auto_increment列的值 public function last_id() { return mysql_insert_id($this->conn); } // 选库函数 public function select_db() { $sql = 'use ' . $this->db; return $this->query($sql); } // 设置字符集的函数 public function setChar() { $sql = 'set names utf8'; return $this->query($sql); } // 自动生成insert语句,update语句并执行 public function autoExecute($data,$table,$act='insert',$where='') { if($act == 'insert') { $sql = 'insert into ' . $table . ' ('; $sql .= implode(',',(array_keys($data))); $sql .= ') values (\''; $sql .= implode("','",array_values($data)); $sql .= "')"; } else if($act == 'update') { if(!trim($where)) { return false; } $sql = 'update ' . $table . ' set '; foreach($data as $k=>$v) { $sql .= $k; $sql .= '='; $sql .= "'".$v."',"; } $sql = substr($sql,0,-1); $sql .= ' where '; $sql .= $where; } else { return false; } //return $sql; return $this->query($sql); } }
更多关于PHP数据库操作相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《PHP基于pdo操作数据库技巧总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:
PHP单例模式详细介绍php设计模式之单例模式实例分析
php单态设计模式(单例模式)实例
php利用单例模式实现日志处理类库
php设计模式之单例模式使用示例
php单例模式实现(对象只被创建一次)
php封装的连接Mysql类及用法分析
相关文章推荐
- PHP统计目录中文件以及目录中目录大小的方法
- PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
- php 实现 二维码 扫描登录
- PHP之Smarty模板的基本使用
- json数组和php数组转换
- 【php】empty()详解
- Thinkphp框架中使用数据对象自动处理添加数据库数据时,关于在数据库表中添加新列时出现新列的数据添加不上去?
- ubuntu 下编译phpphp-5.6.17出错“configure: error: mcrypt.h not found.”
- PHP如何大幅度提升运行效率? -- 把它编译成机器码!
- 高性能PHP支持静态类型
- HHVM 是如何提升 PHP 性能的?
- 【RedHat】FTP服务
- 【php】exit()与die()函数详解
- Yii2 中如何创建自定义项目并且删除原生的frontend和backend
- 【php】$_GET函数
- PHP写一个函数,算出两个文件的相对路径
- 新年伊始,PHP之旅开启!
- php使用PDO方法详解
- PHP curl 不返回结果
- php json_decode 出错