Rumah > rangka kerja php > Laravel > Pembangunan Laravel: Bagaimana untuk mengesahkan data permintaan menggunakan Pengesahan Laravel?

Pembangunan Laravel: Bagaimana untuk mengesahkan data permintaan menggunakan Pengesahan Laravel?

王林
Lepaskan: 2023-06-14 08:35:51
asal
1221 orang telah melayarinya

Pembangunan Laravel: Bagaimana untuk menggunakan Pengesahan Laravel untuk mengesahkan data permintaan?

Laravel ialah salah satu rangka kerja PHP yang paling popular pada masa ini. Salah satu sebabnya ialah ia menyediakan banyak komponen yang sangat baik, salah satunya ialah Pengesahan Laravel. Dalam proses pembangunan web, kami selalunya perlu mengesahkan sama ada data yang diserahkan dari bahagian hadapan mematuhi spesifikasi, seperti penyerahan borang, dll. Pada masa ini, kami perlu menggunakan komponen Pengesahan Laravel untuk pengesahan data.

Artikel ini akan memperkenalkan penggunaan asas dan contoh Pengesahan Laravel.

  1. Memperkenalkan Pengesahan

Memperkenalkan Pengesah dalam Pengawal:

use IlluminateSupportFacadesValidator;
Salin selepas log masuk
  1. Peraturan pengesahan

sokongan Pengesahan Laravel pelbagai peraturan pengesahan yang berbeza, termasuk yang diperlukan, e-mel, tarikh, dsb. Kita boleh memilih mengikut keperluan kita. Jadual berikut menyenaraikan beberapa peraturan yang biasa digunakan:

规则说明
required必填
email邮箱格式
date日期格式
regex正则匹配
max最大长度
min最小长度
  1. Pembinaan Pengesah

Menggunakan Laravel Validaton anda perlu membina pengesah terlebih dahulu, yang boleh dibina dengan cara yang berbeza , seperti:

  • Gunakan kaedah buat fasad Pengesah:
public function validate(Request $request)
{
  $validator = Validator::make($request->all(), [
    'name' => 'required|max:255',
    'email' => 'required|email|unique:users|max:255',
    'password' => 'required|min:6|max:255',
  ]);

  if ($validator->fails()) {
    return redirect('register')
      ->withErrors($validator)
      ->withInput();
  }

  // 验证通过,执行代码
}
Salin selepas log masuk
  • Gunakan pengesahan permintaan:
public function rules()
{
  return [
    'name' => 'required|max:255',
    'email' => 'required|email|unique:users|max:255',
    'password' => 'required|min:6|max:255',
  ];
}

public function register(Request $request)
{
  $this->validate($request, $this->rules());

  // 验证通过,执行代码
}
Salin selepas log masuk
  1. Mesej Ralat Pengesahan

Jika pengesahan gagal, anda boleh mendapatkan mesej ralat melalui kaedah withErrors, seperti:

if ($validator->fails()) {
  return redirect('register')
    ->withErrors($validator)
    ->withInput();
}
Salin selepas log masuk

Kemudian panggil pembolehubah $errors dalam paparan ke dapatkan mesej ralat yang sepadan:

@if ($errors->has('name'))
  <span class="help-block">
    <strong>{{ $errors->first('name') }}</strong>
  </span>
@endif
Salin selepas log masuk
  1. Mesej ralat tersuai

Dalam parameter kedua pembina pengesah, anda boleh menetapkan mesej ralat tersuai untuk memberikan gesaan yang lebih khusus untuk ralat pengesahan, seperti :

public function rules()
{
  return [
    'name' => 'required|max:255',
    'email' => 'required|email|unique:users|max:255',
    'password' => 'required|min:6|max:255',
  ];
}

public function messages()
{
  return [
    'name.required' => '名称不能为空',
    'email.required' => '邮箱不能为空',
    'email.email' => '请输入正确的邮箱地址',
    'email.unique' => '该邮箱已经被注册',
    'password.required' => '密码不能为空',
    'password.max' => '密码长度不能超过:max个字符',
  ];
}

public function register(Request $request)
{
  $validator = Validator::make($request->all(), $this->rules(), $this->messages());

  if ($validator->fails()) {
    return redirect('register')
      ->withErrors($validator)
      ->withInput();
  }

  // 验证通过,执行代码
}
Salin selepas log masuk

Artikel ini menggunakan kod di atas sebagai contoh untuk memberi pengenalan asas kepada Pengesahan Laravel Saya harap artikel ini dapat membantu semua orang.

Bahan rujukan:

"Rangka Kerja Laravel"

Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk mengesahkan data permintaan menggunakan Pengesahan Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan