ホームページ >バックエンド開発 >PHPチュートリアル >CakePHP アーキテクチャ入門_PHP チュートリアル
(1) はじめに
この記事では主に、CakePHP のアーキテクチャと、開発を始めるためのインストールと設定方法を紹介します。
(2) 要件 (1) 基本的な PHP コードを理解している。 (2) Apache+MySQL+PHPの開発環境が構築されました。
(3)本文 (1)CakePHP入門
CakePHP は、PHP をベースにした無料のオープンソース MVC フレームワークです。他の一部の PHP フレームワーク (zend フレームワークなど) よりもシンプルなので、ユーザーは柔軟性を失うことなくネットワーク アプリケーションをより迅速に作成できます。そのため、一般の初心者でも簡単に始めることができます。
CakePHPには以下の機能があります:
フレンドリーで活発なコミュニティを持つ
柔軟な MIT ライセンス
PHP4 および PHP5 と互換性があります
データベースインタラクションはCRUDを使用します
アプリケーションの足場
自動コード生成(コードジェネレーター)
MVCアーキテクチャ
明確でクリーンな高度にカスタマイズ可能な URL とルーティング リクエスト ディスパッチャー
組み込みの検証
高速かつ柔軟なテンプレートメカニズム(PHP構文、ヘルパー付き)
AJAX、JavaScript、HTMLフォーム、その他のビューアシスタントツールを備えています
電子メール、Cookie、セキュリティ、セッション、リクエスト処理コンポーネント
柔軟な ACL アクセス制御メカニズム
データクリーニング
柔軟なビューキャッシュ
ローカリゼーション
Apache 関連の設定をほとんどまたはまったく変更する必要がなく、どのサブディレクトリでも動作できます
(2)構成開発
CakePHP を http://cakephp.org/ からダウンロードします。最新バージョンは 1.2.3.8166 です
ダウンロード後、サーバーのルート ディレクトリ (/wwwRoot/First_App など) に抽出します。同時に、ルート ディレクトリを変更して、DocumentRoot "D:PHPwwwRootFirst_Appappwebroot" のように First_AppAppWebRoot を直接ポイントすることもできます。
Apacheサービスを再起動します。参照: http://localhost/
これと同じページが表示された場合は、Apache サービスが正しく構成されていることを意味します。同時に、ページ上に 4 つのプロンプト メッセージが表示されます。黄色のメッセージは、設定が必要なメッセージです。
構成は次のとおりです:
1. First_AppappconfigCore.php で Configure::write('Security.salt', 'DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi');
を見つけます。
以下のキーを40文字程度の任意の文字列に変更するだけです。2.ファイルFirst_Appappconfigdatabase.php.defaultのファイル名をdatabase.phpに変更し、内部のデータベース接続を変更して、テスト構成を削除します。 最終的な構成は次のとおりです。
クラス DATABASE_CONFIG {
var $default = array(
'ドライバー' => 'mysql',
'永続的' => false,
'ホスト' => 'ローカルホスト',
'ログイン' => 'ルート',
'パスワード' => '123',
'データベース' => 'ケーキ',
'接頭辞' => '',
);
}
3. First_Appapptmp が書き込み可能でない場合は、書き込み可能に変更する必要があります。
変更を保存し、http://localhost/ を再度参照すると、上の黄色のヒントがすべて緑色に変わることがわかります。
ルートは URL とコントローラーのアクションをマッピングするために使用されます
URL スタイルのデフォルト ルート:
http://example.com/controller/action/param1/param2/param3
httpd.conf を変更して mod_rewrite を有効にします
1#LoadModule rewrite_module modules/mod_rewrite.so の前の # を削除します
2同時にAllowOverride noneをAllowOverride allに変更します
例:
すべて上書きを許可する
上記は、すべての Web サイトのディレクトリを [Allowoverride all] に設定することです。これが [none] に設定されている場合、Apache サービスは .htaccess を使用してルーティングを制御します。
ルーティング用に別のディレクトリを指定することもできますが、で指定するディレクトリを追加する必要があります。例:
httpd.confを変更した後は、Apacheサービスを再起動する必要があります。
(3) 構造を利用する
設定が正しい場合は、独自のコードを追加できます。
3.1 データベーステーブルの作成
TableItem を作成する
(
id int (11) unsigned auto_increment,
namevarchar(200),
textvarchar(200),
CreateTimetimestampdefaultcurrent_timeStamp,
主キー (id)
)
Items(name,text) に挿入 value('Item1','Item1content');
3.2 モデルの作成:First_AppappmodelsItem.php
createItemextendsAppModel{
var $name ='アイテム';
}
?>
3.3 コントローラーの作成:First_AppappcontrollersItems_Controller.php
classItemsControllerextendsAppController{
var $name = 'アイテム';
var $scaffold;
}
?>
3.4 参照: http://localhost/Items、結果は次のようになります: