ホームページ バックエンド開発 PHPチュートリアル Cakephp Cakephpはメインプロセスを実行します

Cakephp Cakephpはメインプロセスを実行します

Jul 29, 2016 am 08:42 AM
cakephp

一般的に使用されるメソッドと時間定数を定義する基本ファイル
cake/basics.php をロードします
$TIME_START = getMicrotime(); いくつかの基本パスを定義する
cake/config/paths.php をロードします
cake/lib/object phpの基本クラスcake
cake/lib/inflector.phpは、主に単数と複数の数字、下線付きの命名とキャメルケースの命名を扱います
cake/lib/configure.phpは、ファイル構成の読み書き、パス設定、ファイルのロード方法
cake/lib/cache.php キャッシュ操作
Configure::getInstance(); プロジェクトの設定開始
config/core.php プロジェクトの設定ファイル
config/bootstrap.php プロジェクトのエントリファイル
App ::import('Core', array('Dispatcher')); コアをロードしてビジネスを開始します。
$Dispatcher = new Dispatcher(); 実行を開始します。 pass 現在の URL 解析では、圧縮された Js と Css を設定すると、これらのファイルが圧縮されて出力されます。ページのキャッシュを設定すると、キャッシュされたページが直接出力され、最終的に対応するコントローラーが見つかります。 。見つからない場合は、適切なエラー処理が実行されます。
現在のコントローラーをインスタンス化し、ビューパスを決定し、コンポーネントをインスタンス化し、現在のコントローラーのみのメソッドを取得します(親クラスのコントローラーは含まれません)
プライベートメソッド、現在のコントローラー内の管理ルーティングまたはプレフィックスを持つメソッドを保護します、そして直接アクセスは許可しません
現在のコントローラーの基本属性 (base、here、webroot、plugin、params、action、passedArgs[array_merge($this->params['pass'],$this->) など)を設定します。 params['named'])]
コントローラーでconstructClassesメソッドを呼び出します
親クラスと子クラスのコンポーネント、ヘルパー、使用法、その他の属性の特別なマージ処理を実行する__mergeVarsメソッドを実行します
Component->initを呼び出します() ユーザーが設定した一連のコンポーネント (セッション) をロードするメソッドがデフォルトです)、デフォルトの Enabled 属性は true です。 (このプロパティは後で beforeFilter で変更できます)
一連のコンポーネントにこの初期化メソッドがあり、コンポーネントの有効化が true の場合、components->initialize メソッドが呼び出されます。 (ここでは有効なユーザーです。コントローラーを介して設定することはできないようです。true のみ可能です)
現在のコントローラーで beforeFilter() メソッドを呼び出します。このメソッドは良いことです^_^
コンポーネントを呼び出します->同様に、一連のコンポーネントにこの起動メソッドがあり、コンポーネントの有効が true の場合、components->startup メソッドが呼び出されます (ここでの有効化は beforeFilter を通じて設定できます)。また、コンポーネントで最も重要なメソッドでもあります。たとえば、Auth が大騒ぎします ^_^
現在のコントローラーでアクション メソッドの実行を開始します
autoRender が true に設定されている場合、現在のコントローラーの render() メソッドは次のようになります。それ以外の場合は、Action メソッドによって返されるデータが返されるか出力されます。コントローラーの render() メソッドを呼び出すときは、まず現在のコントローラーの render() メソッドを呼び出します。 beforeRender() メソッドはビュー レンダリング クラスを読み込みます。
Component->beforeRender() メソッドを呼び出します。同様に、一連のコンポーネントに beforeRender メソッドがあり、コンポーネントの有効が true の場合、components->beforeRender メソッドが呼び出されます (ここでは、beforeFilter を通じて有効に設定できます)。
現在のモデルのデータ検証エラー情報を取得し、ビューに使用します
ビューの render() メソッドを呼び出します
関連するヘルパーをロードします
ヘルパーの beforeRender() メソッドを呼び出します
ヘルパーの afterRender() メソッドを呼び出します
関連するキャッシュ処理
renderLayout() メソッドを実行します。もちろん、レイアウトのレンダリングを許可する必要があります。デフォルトは、default.ctp レイアウト ファイルです
ヘルパーの beforeLayout() メソッドを呼び出します
ヘルパーの afterLayout() メソッドを呼び出します
コンポーネントを呼び出します -> shutdown ()メソッドも同様に、シリーズコンポーネントにこのshutdownメソッドがあり、コンポーネントのenabledがtrueの場合、components->shutdownメソッドが呼び出されます(ここでのenabledはbeforeFilterを通じて設定できます)
現在のControllerでafterFilterメソッドを実行します、ここで次のことができます。 ビューの出力コンテンツ ($controller->output) は何らかの処理を実行し、ビュー データを返すか出力します。
手続きは完了です。
上記は、cakephp のコンテンツを含む Cakephp 実行の主なプロセスを紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

この章では、CakePHP の環境変数、一般設定、データベース設定、電子メール設定について理解します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP でデータベース クエリ ビルダーを使用するにはどうすればよいですか? CakePHP でデータベース クエリ ビルダーを使用するにはどうすればよいですか? Jun 04, 2023 am 09:02 AM

CakePHP は、Web アプリケーション開発で広く使用されているオープンソースの PHPMVC フレームワークです。 CakePHP には、インタラクティブなパフォーマンス データベース用の強力なデータベース クエリ ビルダーなど、多くの機能とツールがあります。このクエリ ビルダーを使用すると、面倒な SQL ステートメントを作成することなく、オブジェクト指向構文を使用して SQL クエリを実行できます。この記事では、CakePHP でデータベース クエリ ビルダーを使用する方法を紹介します。データベース接続の確立 データベース クエリ ビルダーを使用する前に、まず Ca でデータベース接続を作成する必要があります。

CakePHP でカスタム ページネーションを作成するにはどうすればよいですか? CakePHP でカスタム ページネーションを作成するにはどうすればよいですか? Jun 04, 2023 am 08:32 AM

CakePHP は、開発者に多くの便利なツールと機能を提供する強力な PHP フレームワークです。その 1 つはページネーションです。これは、大量のデータを複数のページに分割し、閲覧と操作を容易にするのに役立ちます。デフォルトでは、CakePHP はいくつかの基本的なページネーション メソッドを提供しますが、場合によってはカスタムのページネーション メソッドを作成する必要がある場合があります。この記事では、CakePHP でカスタム ページネーションを作成する方法を説明します。ステップ 1: カスタム ページネーション クラスを作成する まず、カスタム ページネーション クラスを作成する必要があります。これ

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

See all articles