本文目录导读:

在 Laravel 中,验证整数时可以使用 between 规则,但有几点需要注意:
✅ 可以使用 between
$request->validate([
'age' => 'required|integer|between:18,65',
'quantity' => 'required|integer|between:1,100',
]);
⚠️ 重要提醒
between 默认包含边界值
between:1,10验证通过的值包括:1, 2, 3, ..., 10- 即:
1 <= 值 <= 10
建议同时使用 integer 规则
// 推荐 'age' => 'integer|between:18,65' // 不推荐(可能接收字符串或浮点数) 'age' => 'between:18,65'
与 digits_between 的区别
// between: 验证数值大小范围 'age' => 'between:18,65' // 18-65之间的数字 // digits_between: 验证数字位数 'code' => 'digits_between:4,6' // 4位到6位的数字(如: 1234, 12345)
🎯 其他整数验证方式
数值范围验证
// 最小值 'age' => 'integer|min:18' // 最大值 'age' => 'integer|max:65' // 配合使用 'age' => 'integer|min:18|max:65'
使用表单请求验证
// app/Http/Requests/StoreUserRequest.php
public function rules()
{
return [
'age' => [
'required',
'integer',
'between:18,65',
],
];
}
自定义验证消息
$messages = [
'age.between' => '年龄必须在 :min 到 :max 之间。',
];
$request->validate([
'age' => 'required|integer|between:18,65',
], $messages);
📝 最佳实践建议
// 简单验证 'age' => 'integer|between:18|65' // 更严谨的验证(加上 required 或 nullable) 'age' => 'required|integer|between:18,65' // 或允许为空 'age' => 'nullable|integer|between:18,65'
between 非常适合验证整数范围,只要记得同时加上 integer 规则确保值是整数类型即可。