継承したコードを見ています。すべての Model クラスで、"Select" クエリを実行するメソッドはすべて static として宣言されていますが、"insert"、"update"、"delete" は同じ Model クラスで static として宣言されていません。
例えば
require_once 'Zend/Db/Table/Abstract.php';
class Model_Course extends Zend_Db_Table_Abstract {
保護された $_name = 'コース';
public static function getCoursesByFaculty($faculty_id)
{
$courseModel = 新しい自己();
$select = $courseModel->select();
$select->setIntegrityCheck(false);
$select->from('course', 'course.*');
$select->joinLeft('course_faculty', 'course.course_id = course_faculty.course_id');
$select->order(array('title'));
$select->where('faculty_id = '.$faculty_id);
$courseModel->fetchAll($select); を返します。
}
}
これらのメソッドを static として宣言する正当な理由/利点はありますか?
ご意見ありがとうございます