对于大多数开发者来说,验证IP的第一个想法就是使用正则表达式,或者开发一个常用函数,造一个轮子,但是如果系统提供了验证的方法,工作量就白费了。恰巧在PHP中就有这么一个函数,学会使用filter_var,提供开发效率。
$valid = preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\z/', $ip);
$valid = filter_var($string, FILTER_VALIDATE_IP);
filter_var — 使用特定的过滤器过滤一个变量
demo
<?php
var_dump(filter_var('[email protected]', FILTER_VALIDATE_EMAIL));
var_dump(filter_var('http://example.com', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
https://www.php.net/manual/zh/function.filter-var.php