検索

phpフレームワークの違い

Sep 30, 2019 pm 05:45 PM
php違いフレーム

phpフレームワークの違い

# PHP フレームワークの一般的な相違点

#1. CI フレームワーク

CI フレームワークはシンプルで、 fast PHP MVC 軽量フレームワークは、実行効率が高く、高速かつ簡潔で、コード量が少ないため、中小規模のプロジェクト開発に適しており、大規模プロジェクトにも使用できますが、拡張性はあまり良くありません。

利点: フレームワークは比較的シンプルで、初心者レベルの開発に適しており、学習が簡単で、すぐに開始でき、静的化も簡単で、ドキュメントは比較的詳細です。

デメリット: フレームワークが小さいため、機能が不完全で、例えばmongoDBを使用する場合、インターフェースを自分で実装する必要があり、データベースの動作が安全ではありません十分です (書き込み操作)。大規模プロジェクトに対するサポートが不十分。

開発ワークフロー:

1.index.php は、CodeIgniter の実行に必要な基本リソースを初期化するフロントエンド コントローラーとして機能します。

2. ルーターは HTTP リクエストをチェックして、誰がリクエストを処理するかを決定します。

3. キャッシュ ファイルが存在する場合、通常のシステム実行シーケンスをバイパスし、ブラウザに直接送信されます。

4. セキュリティ。 HTTP リクエストとユーザーが送信したデータは、ApplicationController をロードする前にフィルタリングされます。

5. コントローラーは、モデル、コア ライブラリ、プラグイン、補助関数、および特定のリクエストを処理するために必要なその他のリソースを読み込みます。

6. 最後のビューでは、Web ブラウザーに送信されたコンテンツがレンダリングされます。キャッシュがオンになっている場合は、ビューが最初にキャッシュされるため、今後のリクエストに使用できるようになります。

CI の URL モード:

Ci でサポートされる URL モードのデフォルトは、/ で区切られた pathinfo 形式です。このうち、//localhost/citest/index.php/ は修正されており、エントリ ファイルを表します

2. ThinkPHP フレームワーク

TP フレームワークは高速で互換性があり、 simple オブジェクト指向構造とMVCパターンを用いて開発された軽量な国産PHP開発フレームワークです。 Windows や Linux などのサーバーをサポートし、複数のデータベースと MySql や Sqlite などの PDO 拡張機能をサポートします。基盤となるアーキテクチャ、互換性処理、基本クラス ライブラリ、データベース アクセス レイヤー、テンプレート エンジン、キャッシュ メカニズム、プラグイン メカニズム、ロール認証、フォーム処理などの共通コンポーネントが含まれており、バージョン間、クロス間での使用がより便利です。 -プラットフォームおよびクロスデータベース移植。中小規模のプロジェクト開発に適しています。

利点: シンプルで使いやすい (モデル、コントローラー、ビューが独自の作業を担当)、XML タグ ライブラリ テクノロジをサポートするコンパイル済みテンプレート エンジンを備えており、2 種類のテンプレート タグ、動的コンパイル、キャッシュ テクノロジ。また、独自のデータ検証と自動入力、MD5 データ暗号化などの機能を備えたカスタム タグ ライブラリもサポートしています。導入は簡単で、必要なエントリ ファイルは 1 つだけなので、すぐに開始できます。

デメリット: テンプレートが比較的固定されているため、アイデアが固まりやすいです。

TP フレームワークで提供される 4 つのルーティング フォーム:

1. ルーティング フォームの取得;

//URL/index .php?m=Group&c=Controller&a=Method (この形式は最低の送信方法であり、安全ではありません)。

2. パス情報ルーティング フォーム [デフォルトのルーティング フォーム]:

//URL/index.php/Group/Controller/Method

#3. ルーティング フォームを書き換えます;

//URL/Group/Controller/Method

4. 互換性のあるルーティング フォーム:

/ /Website/index.php?s=/Group/Controller/Method

3. Laravel フレームワーク

Laravel は、シンプルでエレガントな PHP WEB 開発フレームワークです。 PHP の比較的新しい機能とさまざまなデザインパターンが統合されており、学習に適したフレームワークですが、しっかりとした熟練した PHP の基礎が必要です。大規模および中規模のプロジェクトの開発に適しています。

利点:

1. Composer のサポート

2. フレームワーク構造は比較的明確で、コードのモジュール化 (抽象化されたミドルウェア、タスク、サービスなど) とスケーラビリティを備えたルーティング システムは高速かつ効率的です。

3. クロスサイト リクエスト フォージェリの処理をサポートします。フォームから投稿を送信するとき、{{ csrf_field() }}

4 に渡す必要があります。Laravel のコミュニティは非常に強力で、豊富な拡張パッケージとツールが備わっています

##5。キャッシュ、認証、タスクの自動化、ハッシュ暗号化、トランザクションなどの機能があります

6. ユニークな env 環境ファイルにより、さまざまなプラットフォームのシステム構成と開発が容易になります

#欠点:

コンポーネントベースのフレームワークに基づいており、比較的肥大化しています

Laravel ルーティング方法

:

1. 基本的なルーティング Route::get('/',function(){ return'HelloWorld';});

2. パラメータ付き Route Route::get('user/{id}', function($id){ return 'User '.$id;});

3. Routeフィルタリングパラメータ Route::get('user/ {id}/{name}',function($id,$name){ //}) -> where(array('id'=> '[0-9 ] ', 'name' =>' [a-z] '));

4. サブドメイン名のルーティングなど

5. 次のスタイルなどのコントローラー ルーティング

Route::resource('article','ArticleController'); //restful方式(具体包括get/post等)

  Route::controller('article','ArticleController'); //restful方式(具体包括get/post等)

  Route::get('user/login','UserController@login');//非restful方式 get

  Route::post('user/i','UserController@login');//非restful方式post

four 、Yii フレームワーク

Yii Framework は、大規模な Web アプリケーション開発用のコンポーネントベースの高性能 PHP オープン ソース フレームワークであり、現在最も効率的な PHP フレームワークの 1 つです。大規模で負荷の高いWebアプリケーション開発に適しています。

利点:

1. 純粋な OOP 開発、使いやすいモデル

2. コマンド ライン ツールの開発をサポートし、Web を迅速に作成できますアプリケーション プログラム コード

##3. 高い再利用性と拡張性

##4. 速い開発スピード、優れたパフォーマンス、豊富な機能

##5. Composer パッケージ管理ツールをサポート

欠点:

モデル層はあまり考慮されておらず、ドキュメント内の中国語ドキュメントが少なくなります。 PHP テクノロジーと OOP プログラミングの熟練度が必要です。

推奨チュートリアル:

ThinkPHP チュートリアル

以上がphpフレームワークの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SublimeText3 中国語版

SublimeText3 中国語版

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

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版

SublimeText3 Mac版

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