ホームページ > バックエンド開発 > PHPチュートリアル > PHP で URL ルーティングを考える

PHP で URL ルーティングを考える

WBOY
リリース: 2016-06-23 14:31:00
オリジナル
908 人が閲覧しました

ThinkPHP は、現在の URL に基づいて実行されるモジュールと操作を分析します。この分析作業は URL スケジューラによって実装され、公式の組み込み Dispatcher クラスがスケジューリングを完了します。 Dispatcher スケジューラーでは、現在実行する必要があるプロジェクト (appName)、モジュール (moduleName)、およびオペレーション (actionName) が
http://domainName/appName/moduleName/actionName/params
に基づいて取得される場合があります。 ? 、appName は必須ではありません (通常、Web サイトのホームページ。エントリ ファイルでプロジェクト名を指定できるため、この場合、appName はエントリ ファイルに置き換えられます)。システムは、異なるものに対して異なるインテリジェントな認識を実行します。 URL パターンの設定。

は、実際には、myApp プロジェクトの Index モジュールを見つけるインデックス オペレーションです。モジュールとオペレーションが指定されていない場合、システムはデフォルトのモジュールとオペレーションを実行します。これは、従来の構成における Index モジュールとインデックスです。 ThinkPHP が動作します。したがって、次の URL は上記の結果と同じになります:

http://localhost/myApp/index.php/Index/index/

プロジェクト設定パラメータを通じて、このデフォルト設定を変更できます。

このシステムは、グループ化モードと URL ルーティング機能もサポートしており、URL のさまざまなエクスペリエンスを実現できます。

thinkphp の最初のインスタンスの実行プロセスの分析:

まず第一に、プログラム エントリは Myapp の下にあるindex.php ファイルであり、その中で require(THINK_PATH."/ThinkPHP.php"); がThinkPHP.php への呼び出し 一般的に使用される構成およびデバッグ情報が含まれており、プログラムは APP::run() から実行を開始して、必要なクラスを見つけます。 THINKPHP は名前に基づいてクラスを判断するため、クラスを作成する場合は、**.class.php 形式にする必要があります。関連するクラスを見つけた後、それが指定されていない場合は、デフォルトでクラス内のindex()関数が実行されます。

上記のプロセスで渡される URL は次のとおりです: http://localhost/Myapp/index.php/index/index

ここで、index.php はエントリ ファイル、後続のインデックスは定義したインデックス名のクラスです。最後のインデックスは、定義したインデックス クラスのインデックス メソッドです。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート