-------------------------------------- --- --------------------------------------------------- --- -------
Codeigniter フレームワーク
------------------------------------------------- --------------------------------------------------
------------------------------------------------- --------------------------------------------------
主な内容
CI の紹介
MVC デザインパターンを詳しく学ぶ
CI のコントローラーとビュー
CI のスーパーオブジェクト
データベースアクセス
ARモデル
------------------------------------------------- --------------------------------------------------
CIとは何ですか?
CodeIgniter は軽量でありながら強力な PHP フレームワークです
MVC 設計パターンに基づいて、豊富なクラス ライブラリのセットを提供します
学びやすく、効率的で実践的です
公式サイト
www.codeigniter.com
中国語ウェブサイト
http://codeigniter.org.cn
最新バージョンをダウンロード
CodeIgniter_2.1.4.zip
(2015.7.1 時点の最新バージョンは 3.0.0 - 著者注)
特徴は何ですか?
コンパクトなフレームが欲しい
優れたパフォーマンスが必要です
標準ホスト上のさまざまな PHP バージョンおよび構成との幅広い互換性が必要です
CI 2.1.4 には PHP5.1.6 が必要です
設定をほとんど必要としないフレームワークが必要です
コマンドを必要としないフレームワークが必要です
制限的なコーディング ルールに従う必要のないフレームワークが必要です
テンプレート言語を強制的に学習する必要はありません (ただし、好みのテンプレート パーサーを選択することもできます)
あなたは複雑さが好きではなく、シンプルさが大好きです
明確で完全な文書が必要です
ディレクトリ構造の説明
license.txt 使用許諾契約書
user_guide ユーザーマニュアル
システムフレームワークコアファイル
アプリケーションアプリケーションディレクトリ
index.phpエントリファイル
------------------------------------------------- --------------------------------------------------
MVC
1. エントリーファイル
ブラウザが直接リクエストする唯一のスクリプト ファイル
2.コントローラー
モデルとビューを調整する
3. モデル
データの提供とデータの保存
4. 見る
表示のみを担当
フォーム...
5. アクション
はコントローラー内のメソッドであり、ブラウザーによってリクエストされるために使用されます
CI の MVC
pathinfo を使用して URL にアクセスします
エントリ file.php/controller/action
アプリケーションディレクトリ:
コントローラーコントローラー
モデルモデル
ビューデフォルトのコントローラーは大歓迎です
デフォルトのアクションはインデックスです
コントローラー
1. サフィックスを追加する必要はありません
2. ファイル名はすべて小文字にする必要があります。例: user.php
3. すべてのコントローラーは直接または間接的に CI_Controller クラスを継承します
4. コントローラーのアクション (メソッド) 要件は次のとおりです:
公開
_
で始めることはできません
見る
1. コントローラーにビューをロードする場合
// サブディレクトリがある場合は、拡張子を書かずにビュー名を直接書きます
2. ビューでネイティブ PHP コードを直接使用します
3. 使用を推奨します
=$item['name']?>
スーパーオブジェクト
現在のコントローラーオブジェクト
多くの属性を提供します:
$this->ロード
loaderローダークラスシステム/core/loader.phpのインスタンスローダークラスによって提供されるメソッド:
view() ビューを読み込み中
vars() ビューに変数を割り当てます
database() データベース操作オブジェクトをロードします
Model() モデルオブジェクトをロードします
ヘルパー()
$this->uri
は CI_URI クラスのインスタンスです system/core/URI.php
CI_URI クラスによって提供されるメソッド:
segment() は、uri 内のパラメータを取得するために使用されます
従来: エントリ file.php/controller/action/parameter1/value1/parameter2/value2
エントリファイル.php/controller/action/value1/value2
echo $this->segment(3);//value 1
echo $this->segment(4);//value 2
//index.php/controller/index/6
aut Out Out Out out out out out out ’s’ s s n ’ - - - ft 6
}
$this->入力
入力クラス
は CI_URI クラスのインスタンスです system/core/input.php
CI_URI クラスによって提供されるメソッド:
$this->input->post('username') // $_POST['username']; と同等 $ $ this> input> server( 'document_root');
$this->input->server('REMOTE_ADDR');ビューで $this を直接使用して、スーパー オブジェクトのプロパティにアクセスします
データベースアクセス
設定ファイルを変更する
アプリケーション/config/database.php
データベースアクセスオブジェクトをスーパーオブジェクト $this->db の属性にロードします
$this->load->query($sql);//オブジェクトを返す
$res=$this->db->query($sql);// オブジェクトを返す
$res->result();//配列を返します。配列にはオブジェクトが 1 つずつ含まれます
$res->result_array();//連想配列である 2 次元配列を返します
$res->row()// 直接オブジェクトである最初のデータを返します
パラメータ バインディング
$sql="select * from blog_user where name=?";$this->db->query($sql,$name);// 複数の疑問符がある場合は、 pass インデックス配列を入力してください
テーブルプレフィックス
$db['default']['dbprefix'] = 'new_';
$db['default']['swap_pre'] = 'swap_';
構成は同じですが、将来プロジェクト データベース テーブルのプレフィックスを変更する場合は、$db['default']['dbprefix'] = を変更するだけです。コード swap_ 内の 'new_'; は自動的に new_
に置き換えられます。
applicationconfigautoload.php
$autoload['libraries'] = array(database);
必須ではありません: $this->load->database();