Php/速度改善/zend framework

提供: 初心者エンジニアの簡易メモ
2015年5月19日 (火) 18:11時点における127.0.0.1 (トーク)による版 (ページの作成:「==Zend_Db_TableのfetchAllよりもZend_Db_Selectの方が速い== 改善前 $adapter = (Zend_Db_Table)$this->getAdapter(); $where = array(); $where[] = $adapter->quot...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動
印刷用ページはサポート対象外になりました。そのため表示エラーが発生している場合があります。ブラウザーのブックマークを更新するとともに、印刷にはブラウザー組み込みの印刷機能を使用してください。

Zend_Db_TableのfetchAllよりもZend_Db_Selectの方が速い

改善前

$adapter = (Zend_Db_Table)$this->getAdapter();
$where = array();
$where[] = $adapter->quoteInto("name like ?", "%".$name."%");
$all = $this->fetchAll($where, 'created desc');
if ($all) {
    $all = $all->toArray();
}
return $all;

改善後

$adapter = (Zend_Db_Table)$this->getAdapter();
$select = $adapter->select();
$select->from($this->_name, "*", $this->_schema);
$select->where("name like ?", "%".$name."%");
$select->order('created desc');
return $adapter->fetchAll($select);

php/zend_framework/DBモデル高速化 [ショートカット]

dbの$adapterのselectメソッドを使うよりも新規でselect()を作った方が速い

改善前

$select = $adapter->select();

改善後

$select = new Zend_Db_Select($this->_db);