<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                在任何一個網站系統中數據庫的操作都是一個重心核心問題,在很多時候做為一個開發都有自已已經熟練使用的一套數據庫操作類庫,使用自已熟悉的類庫不僅有助于提高開發效率,也有助于發現問題。在此作者根據自已的使用習慣套用ZF2中的相關數據庫操作類庫重寫了一個實用模型。此節的內容重不在于類庫本身,而是通過這個類庫來擴展自已的思維,以便日后可以自已的需要重寫自已使用的類庫。 新建模型文件:`/module/Application/src/Application/Model/NewsModel.php`,文件的內容如下: ~~~ namespace Application\Model; use Zend\Db\Adapter\Adapter; use Zend\Db\Sql\Sql; use Zend\Db\ResultSet\ResultSet; class NewsModel { protected $adapter; /** * 構造函數 * @param Array $config 數據庫連接配置 */ public function __construct($config=null) { if($config==null) $this->adapter = new Adapter(array( 'driver'=>'Pdo_Mysql', 'database'=>'test', 'hostname'=>'localhost', 'username'=>'root', 'password'=>'' )); else $this->adapter = new Adapter($config); } /** * 返回查詢結果的第一行數據 * @param String $table 操作的數據表名 * @param String $where 查詢條件 * @return Array */ public function fetchRow($table,$where=null){ $sql = "SELECT * FROM {$table}"; if($where!=null) $sql .= "WHERE {$where}"; $statement = $this->adapter->createStatement($sql); $result = $statement->execute(); return $result->current(); } /** * 返回查詢的所有結果 * @param String $table 數據表名 * @param String $where 查詢條件 * @return Array */ public function fetchAll($table,$where=null){ $sql = "SELECT * FROM {$table}"; if($where!=null) $sql .= "WHERE {$where}"; $stmt = $this->adapter->createStatement($sql); $stmt->prepare(); $result = $stmt->execute(); $resultset = new ResultSet; $resultset->initialize($result); $rows = array(); $rows = $resultset->toArray(); return $rows; } /** * 返回指定表的所有數據 * @param String $table 表名 * @return Array */ public function getTableRecords($table) { $sql = new Sql($this->adapter); $select = $sql->select(); $select->from($table); $stmt = $sql->prepareStatementForSqlObject($select); $result = $stmt->execute(); $resultSet = new ResultSet(); $resultSet->initialize($result); return $resultSet->toArray(); } /** * 插入數據到數據表 * @param String $table * @param Array $data * @return Int 返回受影響的行數 */ public function insert($table,$data){ $sql = new Sql($this->adapter); $insert=$sql->insert($table); $insert->values($data); return $sql->prepareStatementForSqlObject($insert)->execute()->getAffectedRows(); } /** * 更新數據表 * @param String $table 數據表名 * @param String $data 需要更新的數據 * @param String|Array $where 更新條件 * @return Int 返回受影響的行數 */ public function update($table,$data,$where){ $sql = new Sql($this->adapter); $update=$sql->update($table); $update->set($data); $update->where($where); return $sql->prepareStatementForSqlObject($update)->execute()->getAffectedRows(); } /** * 刪除數據 * @param String $table 數據表名 * @param String|Array $where 刪除條件 * @return Int 返回受影響的行數 */ public function delete($table,$where){ $sql = new Sql($this->adapter); $delete = $sql->delete($table)->where($where); return $sql->prepareStatementForSqlObject($delete)->execute()->getAffectedRows(); } /** * 返回最后插入的主鍵值 * @return Int */ public function lastInsertId(){ return $this->adapter->getDriver()->getLastGeneratedValue(); } } ~~~ 以上代碼為一個完整的模型代碼,這個模型中使用了多個ZF2中的DB類庫來實現不能的功能需求,上面只是一個范例且已經對各個函數方法給出了注釋,在此就不對該模型做一一詳解。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看