我想驗證我的密碼輸入是否包含至少 10 個字符和 1 個數字。但是當我在我的控制器中嘗試這個時,它沒有用。那么我該怎么做呢?
$request->validate(['password' => 'required|min:10|numeric|max:9']);
uj5u.com熱心網友回復:
您可以像下面一樣嘗試digits_between - >
$request->validate(['password' => 'required|min:10|digits_between:2,5]);
uj5u.com熱心網友回復:
您可以結合使用正則運算式和最小驗證:
$request->validate([
'password' => [ 'required', 'min:10', 'regex:/^[a-z]*\d[a-z]*$/i' ];
]);
這需要 10 的最小長度和 1 個數字。如果您允許其他角色,您可以將它們放入[a-z]組中
uj5u.com熱心網友回復:
使用需要至少一個數字的密碼規則物件。
Password::min(10)->numbers();
這是您正在尋找的驗證。
$request->validate([
'password' => [
'required',
'string',
Password::min(10)
->numbers()
]
]);
uj5u.com熱心網友回復:
這個正則運算式會給你最強的密碼。密碼必須至少包含一個大寫字母、小寫字母和至少 1 個數字
'password' => ['required', 'string', 'min:10', 'regex:/(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{10,}/']
uj5u.com熱心網友回復:
此正則運算式將驗證您的密碼必須僅包含一個數字,并且 min 屬性驗證密碼的最小長度。
$request->validate(['password'=>'required|min:10|regex:/^[^\d\n]*\d[^\d\n]*$/']);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/425389.html
