php – is_numeric还是数字preg_match?

我在论坛上看到你无法完全信任is_numeric().它允许通过“0xFF”例如允许的十六进制…

所以我的问题是你能欺骗is_numeric吗?我是否需要使用正则表达式才能正确执行?

最佳答案
以下是is_numeric()认为是数字字符串的内容:

Numeric strings consist of optional sign, any number of digits, optional decimal part and optional exponential part. Thus +0123.45e6 is a valid numeric value. Hexadecimal notation (0xFF) is allowed too but only without sign, decimal and exponential part.

如果您只想检查字符串是否包含十进制数字0-9,则可以使用ctype_digit().

转载注明原文:php – is_numeric还是数字preg_match? - 代码日志