-
-
/** - * PDO 操作
- * 作成者: PhpStorm.
- * ユーザー: umiaowen
- * 日付: 13-11-28
- * 時刻: 午後 9 時 12 分
- * このテンプレートを変更するには、ファイル | を使用します。設定 |ファイルテンプレート
- */
- class Pdo_db
- {
- private $dns = null;
- private $username = null;
- private $password = null;
- private $conn = null;
- private static $_instance = null;
プライベート関数 __construct($params = array())
- {
- $this->dns = $params['dns'];
- $this->username = $params['username'];
- $this-> ;パスワード = $params['パスワード'];
$this->_connect();
- }
プライベート関数 __clone() { }
public function get_instance($params = array())
- {
- if(!(self::$_instance instanceof self))
- {
- self::$_instance = new self($params);
- }
return self::$_instance;
- }
プライベート関数 _connect()
- {
- try
- {
- $this->conn = 新しい PDO($this->dns, $this->ユーザー名, $this->パスワード);
- $this-> conn->query('set names utf8');
- }
- catch(PDOException $e)
- {
- exit('PDOException: ' . $e->getMessage());
- }
- }
/**
- * SQL ステートメントをクエリします
- * @param string $sql
- * @param array $parameters バインドする必要があるパラメーター
- * @param int $option
- * @return array
- */
- public function query($sql, $parameters = array(), $option = PDO::FETCH_ASSOC)
- {
- $stmt = $this->conn->prepare($sql) );
- $stmt->execute($parameters);
$tmp = array();
- while($row = $stmt->fetch($option))
- {
- $tmp[] = $row;
- }
return $tmp;
- }
/**
- * データを挿入します
- * @param string $sql
- * @param array $parameters
- * @return int 1 または 0 影響を受ける行の数を返します
- */
- public function insert($sql, $parameters = array())
- {
- $stmt = $this->conn->prepare($sql);
- $stmt-> execute($parameters);
return $stmt->rowCount();
- }
/**
- * データを更新します
- * @param string $sql
- * @param array $parameters
- * @return int 1 または 0 影響を受ける行の数を返します
- */ bbs.it-home.org
- public function update($sql, $parameters = array())
- {
- $stmt = $this->conn->prepare($sql) ;
- $stmt->execute($parameters);
return $stmt->rowCount();
- }
/**
- * データの一部を削除します
- * @param string $sql
- * @param array $parameters
- * @return int 1 または 0 影響を受ける行の数を返します
- */
- public function delete($sql, $parameters = array())
- {
- $stmt = $this->conn->prepare($sql);
- $stmt-> execute($parameters);
return $stmt->rowCount();
- }
- }
-
复制代码
代码链グラウンド址:https://github.com/umiaowen/mynotes/tree/master/pdo_mysql_class |