在这里,我得到了这个功能:
public function strposa($haystack, $needles=array(), $offset) {
$chr = array();
foreach($needles as $needle) {
$res = strpos($haystack, $needle, $offset);
if ($res !== false) $chr[$needle] = $res;
}
if(empty($chr)) return false;
return min($chr);
}
和这个:
function usernameCurseWords($name) {
$string = $name;
$array = array('bad', 'words', 'are', 'here');
if (parent::strposa($string, $array, 0)) {
return true;
}
}
我这样称呼它:
if ($this->usernameCurseWords($username)) { throw new Exception($error['userCurseWords']); }
如果 haystack 为“1bad”,则该函数将返回 true(“bad”是针)。
但是,如果 haystack 是“badblablbla”,则该函数返回 false。
知道为什么这不能正常工作吗?