ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp5 が .php サフィックスを許可しない場合はどうすればよいですか?

thinkphp5 が .php サフィックスを許可しない場合はどうすればよいですか?

PHPz
PHPzオリジナル
2023-04-11 15:08:18595ブラウズ

最近、多くの ThinkPHP5 開発者が、システムでは URL ルーティングの設定時に .php サフィックスの使用を許可しなくなったと報告しており、この変更はネチズンの間で激しい議論を引き起こしました。

ThinkPHP は、中国で広く使用されている成熟した PHP フレームワークであり、そのシンプルさ、使いやすさ、豊富な機能、優れたパフォーマンスにより、開発者に深く愛されています。ただし、ThinkPHP 5.1.0 バージョンでは、システムで .php 接尾辞の使用が許可されなくなるという、大きな変更が開発者の意識に徐々に浸透しています。

実は、バージョン 5.1.0 のアップデート ログで、公式がすでにこの変更について説明しています。具体的には、URL ルーティングを設定するときに、ルーティング ルールに .php サフィックスが含まれている場合、システムは次のプロンプトを表示します: PHP サフィックスはサポートされなくなりました。

この変更により、.php 接尾辞の使用に慣れている一部の開発者が混乱しました。 ThinkPHP5 が .php サフィックスをサポートしなくなったのはなぜですか?公式の説明では、これは、スクリプト言語としての PHP のサフィックスが URL アクセス プレフィックスの構造と一致しないため、システムの検索や解析に役立たないためであるとされています。 RESTful API などの新しい API 開発手法を使用する開発者が増えるにつれ、URL 構造をよりシンプルかつ明確に表現する傾向になったため、バージョン 5.1.0 では .php 接尾辞のサポートが中止されました。

それでは、ThinkPHP5 で URL ルーティングを設定するにはどうすればよいでしょうか?基本的に、ルーティング設定には PHP クロージャやその他のメソッドを引き続き使用できます。たとえば、次の URL ルーティング ルールを設定できます。

Route::rule('news/:id','index/news/read',['method'=>'get'],'',['id'=>'\d+']);

この設定では、ユーザーが URL アドレス /news/123 にアクセスすると、システムは自動的にインデックス コントローラーの news メソッドを呼び出し、パラメータの id 値は 123 に設定されます。 .php 接尾辞の制約がなく、書き換えルールを設定する必要がないため、開発者は上記のコードを記述し、ブラウザに対応する URL アドレスを入力するだけで、関連ページを完全に表示できます。

つまり、.php サフィックスのサポートの削除は、古いテクノロジー愛好家をある程度失望させましたが、ThinkPHP5.1.0 バージョンの全体的なパフォーマンスから判断すると、この変更は、より高速化に役立つ可能性があります。検索と分析も、最新の API 開発のトレンドにより沿っています。したがって、時代にうまく対応し、システムの高いパフォーマンスとセキュリティを維持するには、開発プロセス中にこの変更を積極的に適応して適用する必要があります。

以上がthinkphp5 が .php サフィックスを許可しない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。