我正在尝试找到一种方法来验证IP地址,然后再将其提交到我的数据库,我尝试了很多Google搜索,但无法在我的Laravel控制器中执行此操作。你能帮忙吗?理解
答案 0 :(得分:3)
在控制器内部使用。导入验证器类的命名空间并尝试验证IP(IP4 / IP6)地址。 Laravel 5
和Laravel 5.X
public function update(Request $request)
{
$validator = Validator::make($request->all(), [
'ip_address' => 'required|ip'
]);
}
if ($validator->fails()) {
return "Invalid IP address!"
}
如果您想分别验证IP4和IP6,请使用以下代码。
'ip_address' => 'required|ipv4'
'ip_address' => 'required|ipv6'
快乐编码!!!
答案 1 :(得分:2)
您可以在控制器内部执行此操作:
public function update(Request $request)
{
// Get the current users IP address and add it to the request
$request->merge(['ip_address' => $_SERVER['REMOTE_ADDR']]);
// Validate the IP address contained inside the request
$this->validate($request, [
'ip_address' => 'required|ip'
]);
}
$request->merge()
方法允许您向表单请求添加项目,然后您只能在IP上发出简单的验证请求。
或者,您可以将所有这些移动到它自己的Request类并将其注入到方法中。