ホームページ >PHPフレームワーク >Laravel >Laravel アプリケーションは、データの取得から始めてユーザーを扱います。
次のチュートリアルコラムでは、Laravel アプリケーションと、データの取得から始まるユーザーの扱いについて紹介します。 , 困っている友達のお役に立てれば幸いです! はじめに
そのため、バックエンド開発者にバッファリング時間を与えるために、ビューをスキップして、最初にユーザー データの取得と処理について説明します。これは、あらゆるユーザーにとってほぼ必須の機能です。応用。 。
ユーザーデータも危険です
コード時間
それが単一ユーザーのプライベート データである場合、URL とともにインラインで直接送信してはなりません。
laravelユーザー入力を
Input オブジェクトに保存します。論理的には、ユーザー入力はリクエスト項目に属する必要があるため、Request も継承します。入力のメソッドとデータ。 たとえば、次のルート: Route::post('form', function (Illuminate\Http\Request $request) {
// $request->method()});
はフォーム アドレスをシミュレートし、post メソッドを通じてデータを送信し、Request メソッドを使用します。利用可能な取得方法を見てみましょう。
まず
$request->all()について話しましょう。これはすべての入力データを出力します。たとえば、フォームには次のフィールドがあるとします。 HTML コンテンツを見てみましょう。
データをデバッグするために、ルートは次のように登録されます: Route::post('/post-route', function (Request $request) {
var_dump($request->all());});
何が出力されると思いますか?
/** * [ * '_token' => 'CSRF token here', * 'firstName' => 'value', * 'utm' => 12345 * ] */
はい、それは投稿フォームのフィールド firstName、クエリ文字列のクエリ パラメータ utm、および CSRF 保護のための laravel 組み込み関数です。デフォルトのフォーム フィールドは
__tokenです。だから気にしないでください。
しかし、コーディングに夢中になっている学生にとっては、耐えられないかもしれません。これは私の分野ではないので、コードでは使用しません。この __トークン は見たくないです。 、この見慣れない変数。はい、リクエスト パラメータで直接フィルタリングすることができます:
Route::post('/post-route', function (Request $request) { var_dump($request->except('_token'));});
その中で、excect() メソッドは特定のフィールドをフィルタリングするために使用されるため、使用する必要はありません。これに対応するのは、使用するフィールドを指定する
only() メソッドです。次のように使用します: $request->only(['firstName', 'utm']);
いくつかのキーが存在するかどうかを判断することが論理的である場合があります。Laravel では、キーが存在するかどうかを判断する 2 つの方法が提供されます。1 つは has で、もう 1 つは
。クラスメイトの中には、has があるのに、なぜ exists が必要なのか疑問に思う人もいるかもしれません。機能が違うからです。 hasこのメソッドは、キーが存在するかどうかだけでなく、キーの値が
empty (null、空の文字列、false、0 など) であるかどうかも判断します。 、空の配列、空のオブジェクトなど)も false と判定されます。したがって、単純にキーが存在するかどうかを判断するには exists を使用する必要があり、使用する場合はこの 微妙な違い に注意する必要があります。 使用法は非常に簡単で、メソッドを直接呼び出すだけです。 if ($request->has('utm')) {
// Do some work}
入力値キーが存在しない場合は、そのデフォルト値を設定することもできます。これは
Route::post('/post-route', function (Request $request) { $userName = $request->input('name', 'anonymous');});ユーザーが名前フィールドを渡さない場合は、代わりに anonymous を使用します。
上記はすべて単純なキーと値のペアです。フォームもあります。受信フィールドは次のような配列である場合があります:
ドット スタイルを使用して配列を取得できますlaravel.メソッドで読み込むのは、laravelが解析時にヘルパークラスArrの一般的なメソッドを使用するためです。たとえば、特定のキーを取得するには:$employeeZeroFirstName = $request->input('employees.0.firstName');キー名とレベルを明確に指定します。アスタリスクを使用して、特定のレベルのすべてのキーに一致させることもできます:
$allLastNames = $request->input('employees.*.lastName');または、特定のキーを指定するだけで、レベルの数に関係なく、それをそのまま返します:
$employeeOne = $request->input('employees.1');For具体的な使用法については、読者はソース コードまたはドキュメントを確認できます。
Arr
オペレーション クラスの使用法を詳しく見てみましょう。この記事では、ユーザー入力に最も一般的に使用される方法のいくつかについてほぼ説明しています。ユーザー データを通常に取得する方法についてのみ説明しました , データの有効性を検証する方法については説明しません。フロントエンド検証はほとんど役に立たないため、データベースに書き込まれた最終データは依然としてアプリケーションによってチェックされる必要があります。
それは 検証者 の仕事です。検証者については後続の章で詳しく説明します。
以上がLaravel アプリケーションは、データの取得から始めてユーザーを扱います。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。