この記事では、主にチェーン操作を実装する PHP の中心となるアイデアを説明することに重点を置いています。必要な方は参照してください。それに
PHPチェーンオペレーションの実装
コードは以下の通りです:
$db->where()->limit()->order();
Commonの下にDatabase.phpを作成します。
チェーン操作の核心は、メソッドの最後に $this;
を返すことです。Database.php:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
名前空間共通;
クラスデータベース{ 関数 where($where){ return $this; //チェーンメソッドの核心は、各メソッドの後に $this を返すことです } 関数順序($order){ $this を返す; } 機能制限($limit){ $this を返す; } } |
index.php:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
define('BASEDIR',__DIR__); //ルートディレクトリ定数を定義します BASEDIRをインクルードします。'/Common/Loader.php'; spl_autoload_register('\Common\Loader::autoload');
$db = 新しい CommonDatabase();
//従来の操作を実装するには複数行のコードが必要です //$db->where('id = 1'); //$db->where('name = 2'); //$db->order('id desc'); //$db->limit(10);
//チェーン操作を使用して、1 行のコードで問題を解決します $db->where('id = 1')->where('name = 2')->order('id desc')->limit(10); |
チェーン操作を使用する場合、IDE (netbeans は自動プロンプトを表示します):