laravel防止sql注入验证方法
xuexi 2023-11-17 10:35:00 发表在:PHP 查看数:923

1、2种方法,使用验证类 ,引入 use Validator;

 $validator = Validator::make(['id' => $id], [
    'id' => 'required|numeric'
]);

if ($validator->fails()) {
    abort(404);
}else {
    //Run query
}
  1. 绑定参数
    DB::statement("UPDATE users SET password=?  WHERE username =?", [$password, $username]);
    
    验证规则:
    regex:pattern(正则):验证此规则的值必须符合给定的正则表达式。
    accepted(yes|no|1:验证此规则的值必须是 yes、 on 或者是 1。这在验证是否同意的时候非常有用。
    alpha(全部字母):验证此规则的值必须全部由字母字符构成。
    active_url:字段值通过 PHP 函数 checkdnsrr 来验证是否为一个有效的网址。
    after: date:验证字段是否是在指定日期之后。这个日期将会使用 PHP strtotime 函数验证。
    before: date:验证字段是否是在指定日期之前。这个日期将会使用 PHP strtotime 函数验证。
    alpha:字段仅全数为字母字串时通过验证
    alpha_dash:字段值仅允许字母、数字、破折号(-)以及底线(_)
    alpha_num:字段值仅允许字母、数字
    array:字段值仅允许为数组
    between:min,max:字段值需介于指定的 min 和 max 值之间。字串、数值或是文件都是用同样的方式来进行验证。
    digits:value:字段值需为数字且长度需为 value。
    digits_between:min,max:字段值需为数字,且长度需介于 min 与 max 之间。
    boolean:字段必须可以转换成布尔值,可接受的值为 true, false, 1, 0。
    email:字段值需符合 email 格式。
    image:文件必需为图片(jpeg, png, bmp, gif 或 svg)
    ip:字段值需符合 IP 位址格式
    max:value:字段值需小于等于 value。
    min:value:字段值需大于等于 value。
    required:字段值为必填
    integer:必须是数字
    string:必须是字符串

$validator = Validator::make($request->all(), [ 'code' => 'required|alpha_dash|min: 2|max:20' // 'code' => 'required'

]);

if ($validator->fails()) { abort(404); }

最近访问时间:2025-04-30 16:46:47
知识库:340条鸣谢:TAY  备案号:蜀ICP备2024090044号