ホームページ > 記事 > PHPフレームワーク > tp5とlaravelの違いは何ですか
違い: 1. Laravel は、クロスドメイン攻撃を防ぐためにフォームを送信するときに「@csrf」をフォームに追加する必要がありますが、tp を追加する必要はありません; 2. Laravel は「Db::operation」を使用します('native sql' )" はネイティブ クエリの場合、tp は "Db::query('native sql')" をネイティブ クエリの場合に使用します。
このチュートリアルの動作環境: Windows 10 システム、Laravel 6 バージョン、DELL G3 コンピューター。
1。 TP5 と Laravel フレームワークの違い
相違点:
1. データを送信する方法で、Laravel はフォームに @csrf または {unknown{ csrf_token() } を追加する必要があります。フォームを送信する。 } クロスドメイン攻撃を防止しますが、TP は防止しません。
2. ルーティング、Laravel は、使用する前に最初に定義する必要があります。ルーティング ファイルは、routes.php です。TP が設定ファイルでルーティングをオンにした後、ルーティングの形式は次のようになります: 'ルーティング式' => 'ルーティングアドレスとパラメータ (ルーティングを使用するための前提条件は、URL が phthinfo をサポートしており、ルーティングが有効であることです)、ルーティングにより URL を SEO にさらに適合させることができます。
3. ミドルウェア、Laravel のミドルウェア、ミドルウェアは、HTTP リクエストが到達する前に通過する層であり、ミドルウェアを通じて、ユーザーがログインしているかどうかやその他の一般的な操作を確認できます。
4. データベースを操作するには、ネイティブクエリを使用する場合とは異なり、インスタンス化(対応するモデルクラスの作成)とDB:table('テーブル名')を使用してデータベースを操作できます。 uses Db ::Operation ('native sql'), TP uses Db::query ('native sql');
5. Laravel のアップグレードは非常に簡単ですが、TP の大きなバージョンをアップグレードするにはコードのリファクタリングが必要です。
6. 条件判定文の書き方の違い:
Laravel フレームワークの If else 判定文と foreach 文は @if で始まり @endif で終わる必要があります。構文エラーが報告されます。,@foreach @endforeach は同じです。
##TP フレームワークは、PHP 文法規則、ifesle ステートメントの直接判断、および foreach ループのトラバーサルの使用と一貫しています #2. CSRF 保護CSRF クロスサイト リクエスト フォージェリ (クロスサイト リクエスト フォージェリ) は、XSS 攻撃と同様に多大な被害をもたらします。
CSRF 攻撃に対する防御:
現在、CSRF 攻撃を防御するための主な戦略は 3 つあります: HTTP Referer フィールドを検証する、リクエスト アドレスにトークンを追加して検証する、HTTP ヘッダーの属性をカスタマイズして検証する。
[関連する推奨事項:
laravel ビデオチュートリアル以上がtp5とlaravelの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。