我有一个用户名输入。如果我想检测像这样的$array = array('#','%','^')
数组中的一些字符那么在php中是否有内置函数?将获取一个数组并返回true或false。
答案 0 :(得分:1)
最简单的方法是:
if (str_replace($array, '', $username) != $username) {
do something;
}
您当然可以编写自己的功能:
function contains_unallowed($array = ['#', '%', '^']) {
return str_replace($array, '', $username) != $username;
}
它将一个字符数组作为可选参数,并返回true或false。如果不起作用,请将方括号[]
替换为array()
。
答案 1 :(得分:0)
array_intersect可以帮助您 - 例如
$array = array('#','%','^');
if(array_intersect(str_split($username), $array)) {
echo "Found";
} else {
echo "Not Found";
}