Isa*_*iah 12 php arrays string contains
我想要一个函数来检查数组的项是否包含字符串.因此:
array(1 => 'Super-user', 'Root', 'Admin', 'Administrator', 'System', 'Website', 'Owner', 'Manager', 'Founder');
Run Code Online (Sandbox Code Playgroud)
然后检查admin12应该返回true,因为admin12(admin)的一部分也是数组的一部分.
我走到这一步:
$forbiddennames= array(1 => 'Super-user', 'Root', 'Admin', 'Administrator', 'System', 'Website', 'Owner', 'Manager', 'Founder');
if(in_array( strtolower($stringtocheck), array_map('strtolower', $forbiddennames))){
echo '"This is a forbidden username."';
} else {
echo 'true';
}
}
Run Code Online (Sandbox Code Playgroud)
只有这只回声"这是一个禁止的用户名".当我检查admin.我希望它也能在检查时回显admin12.
这可能(以及如何)?
循环遍历$forbiddennames数组并用于stripos检查给定的输入字符串是否与数组中的任何项匹配:
function is_forbidden($forbiddennames, $stringtocheck)
{
foreach ($forbiddennames as $name) {
if (stripos($stringtocheck, $name) !== FALSE) {
return true;
}
}
}
Run Code Online (Sandbox Code Playgroud)
并使用如下:
if(is_forbidden($forbiddennames, $stringtocheck)) {
echo "This is a forbidden username.";
} else {
echo "True";
}
Run Code Online (Sandbox Code Playgroud)