PHP:检查字符串是否包含不在数组中的字符

use*_*177 2 php

我想验证一个字符串是否由数字或逗号或分号组成:

有效:1.234 有效:1,234 无效:1.23a 无效:1.2_4

什么工作:

用于str_split从字符串中创建一个数组并in_arrayarray(0,1,2,3,4,5,6,7,8,9,',',';').

但这对我来说感觉很迂回,因为我必须用数百万个字符串来做这件事,所以我想确保没有更有效的方法。

问题:有没有更有效的方法?

Nit*_*tin 5

如果您只需要验证一个字符串(而不是清理或修改它),您可以使用正则表达式。请尝试以下操作:

if (preg_match('/^[0-9\,\;\.]+$/', $string)) {
     // ok
} else {
    // not ok
}
Run Code Online (Sandbox Code Playgroud)