検索
ホームページphp教程php手册Cakephp を始めるための基本

Cakephp を始めるための基本

Jun 13, 2016 pm 12:02 PM
cakephpはじめる写真ベース埋め込むプロセス百度百科事典


まず、cakephp の実行プロセスを見てみましょう (画像は百度百科から借用):
1: まず、サーバーが書き換えをサポートしていない仮想ホストである必要があります。リライトをサポートすると、cakephp が正常に動作しなくなります。
2: すべてのリクエストをcakephpフレームワークに送信し、フレームワークのルートを入力します。cakephpにはデフォルトの配布ルールのセットが付属しています(例: http://.../test/test、ルート設定はありません)。この場合、cakephp は test_controller コントローラーのテスト メソッドを自動的に実行します)。
ルートを構成することで、実行したいリクエストをコントローラーとメソッドに送信できます。構成は次のとおりです (app/config/routes.php):

Copyコード コードは次のとおりです:


Router::connect('/pages/*', array('controller' => 'test', 'action' = > 'index '));


3: リクエストがコントローラーに入ると、cakephp はコントローラーの名前に従ってデフォルトのモデルをロードします。例: TestController はモデルの下に test.php ファイルを自動的にロードします。その後、次のメソッドを通じてモデルのメソッドを呼び出すことができます。

コードをコピー コードは次のとおりです:


$this->test->find('all') ;


cakephp フレームワークのコントローラー基本クラスのソース コードを表示します (cakelibscontrollercontroller.php の __mergeVars メソッド内)

コードをコピーします コードは次のとおりです。


if ($this->uses !== null && $this->uses !== false) {
$merge[] = 'uses';
}
foreach ($merge as $var) {
if (isset($appVars[$var]) && !empty($appVars[$var]) && is_array($this) ->{$var})) {
if ($var !== 'uses') {
$normal = Set::normalize($this->gt;{$var}); $app = Set::normalize($appVars [$var]);
if ($app !== $normal) {
$this->{$var} = Set::merge($app) , $normal);
}
} else {
$this->{$var} = array_merge($this->{$var}, array_diff($appVars[$var], $ this->{$var})) ;
}
}
}

cakephp がコントローラーを構築すると、uses 配列内のすべてのモデルがインスタンス化されます。
4, 5, 6: コントローラーとモデルが直接ビジネスロジックを扱う処理です。 注意すべき点は、cakephp のモデルは AppModel から一部のデータベース操作メソッドが実装されていることです。デフォルトでデータベース内のテーブルに関連付けられます。これはあまり良いことではありません。モデルはデータベースの単なる操作層です。
7: 業務処理が完了したら、最終データをHTMLに統合してブラウザに出力する必要があります。 Cakephp のビューには、レイアウト ファイル、要素ファイル、およびテンプレート ファイルが含まれています。これらのファイルは、バージョン 1.3 で ctp のサフィックスを採用しており、var $ext = '.ctp' を変更してテンプレートのサフィックスを変更できます。ファイル。
要約:cakephp フレームワークは使用するには柔軟性が不十分であり、モデル層には制限があります。ビュー ファイルで使用される構文は PHP ですが、これはチーム開発におけるタスクの分離には不便です。 Cakephp は、フレームワークによって提供されるスキャフォールディング、コア コンポーネント、およびいくつかのクラスを使用して、小規模なプロジェクトに非常に優れた能力を発揮し、プロジェクトを迅速かつ簡単に構築できます。私はcakephpを初めて使用するので、私の理解に偏りがあるかもしれません。
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。