我想获取整数值的长度以在 PHP 中进行验证。示例:手机号码只能是 10 个整数值。它不应超过 10 或少于 10,也不应包含字母字符。
我怎样才能验证这一点?
原文由 GitsD 发布,翻译遵循 CC BY-SA 4.0 许可协议
我想获取整数值的长度以在 PHP 中进行验证。示例:手机号码只能是 10 个整数值。它不应超过 10 或少于 10,也不应包含字母字符。
我怎样才能验证这一点?
原文由 GitsD 发布,翻译遵循 CC BY-SA 4.0 许可协议
通过使用 Webmozart Assert 的断言库,我们可以使用它们的内置方法来验证输入。
integerish()
验证值是否转换为整数length()
来验证字符串是否包含一定数量的字符例子
Assert::integerish($input);
Assert::length((string) $input, 10); // expects string, so we type cast to string
Assert 类中的所有断言都会抛出 Webmozart\Assert\InvalidArgumentException
如果它们失败,我们可以捕获它并向用户传达明确的信息。
例子
try {
Assert::integerish($input);
Assert::length((string) $input, 10);
} catch (InvalidArgumentException) {
throw new Exception('Please enter a valid phone number');
}
另外,甚至可以检查该值是否不是非负整数。
例子
try {
Assert::natural($input);
} catch (InvalidArgumentException) {
throw new Exception('Please enter a valid phone number');
}
我希望它有帮助🙂
原文由 Stefano Degenkamp 发布,翻译遵循 CC BY-SA 4.0 许可协议
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
2 回答806 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.3k 阅读