gpt4 book ai didi

当第一个字符为 0 时,PHP 过滤器验证 int 问题

转载 作者:可可西里 更新时间:2023-11-01 13:50:25 32 4
gpt4 key购买 nike

我正在使用 PHP filter_validate_int 执行简单的电话验证。长度应该恰好是 10 个字符,并且都应该是数字。然而,由于大多数电话号码以 0 开头。过滤器验证 int 函数返回 false。有没有办法解决这个问题。这是我用过的代码

if(!filter_var($value, FILTER_VALIDATE_INT) || strlen($value) != 10) return false;

最佳答案

您无法执行此验证。在任何情况下,您都不应该使用 FILTER_VALIDATE_INT,因为电话号码不是整数;它们是数字串

如果您想确保 $tel 是一个由 10 位数字组成的字符串,您可以使用正则表达式:

if (preg_match('/^\d{10}$/', $tel)) // it's valid

或者(也许更好)一些老派的字符串函数:

if (strlen($tel) == 10 && ctype_digit($tel)) // it's valid

关于当第一个字符为 0 时,PHP 过滤器验证 int 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18912028/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com