Php 禁止管理员作为用户名

Php 禁止管理员作为用户名,php,Php,我做了一个注册帐户页面的功能,这样有人就不能用用户名admin或administrator注册了。代码如下: 禁用功能($word){ $Probidden=数组('Admin','Admin','Administrator','admin1','admin1','admin123','admin123','admin123456','admin123456','Administrator1','Administrator2', “Administrator3”、“admin3”、“admin4

我做了一个注册帐户页面的功能,这样有人就不能用用户名admin或administrator注册了。代码如下:

禁用功能($word){
$Probidden=数组('Admin','Admin','Administrator','admin1','admin1','admin123','admin123','admin123456','admin123456','Administrator1','Administrator2',
“Administrator3”、“admin3”、“admin4”、“Administrator123”、“Administrator123”、“administrator1”、“administrator2”、“Administrator123”、“Administrator3”、“aDmin”、“aDmin”、“aDmin”,
“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”、“管理员”,
‘管理员’、‘管理员’、‘管理员’、‘管理员’、‘管理员’、‘管理员’、‘管理员’、‘管理员’、‘管理员a’、‘管理员b’;

对于($i=0;$i,如果你想保留你的禁词数组,这里最好使用数组()中的函数
。除此之外,我建议使用@rickdenhaan answer之类的方法并使用正则表达式。你可以使用
(\d)?(admin)(isterator)?(\d)?

包括您定义的所有单词,还有一些我想您希望过滤掉的单词

可能需要进行一些微调,因为您似乎只想从禁止管理开始:

function forbidden($word) {
  return !preg_match('/^admin/i', $word);
}
请注意,这将返回布尔值true/false。如果您真的需要示例中的字符串,则可以:

function forbidden($word) {
  return (preg_match('/^admin/i', $word) ? 'false' : 'true');
}

我可能会使用不区分大小写的正则表达式检查用户名是否以“admin”开头。编辑或只检查前5个字符的小写子字符串是否与“admin”匹配。听起来是一个了解使用正则表达式进行模式匹配的好处的好机会……我真的不明白为什么我再次被否决……我正要对
/^admin/I
发表评论,感谢迄今为止最好的解决方案!我会接受正确的答案!
function forbidden($word) {
  return !preg_match('/^admin/i', $word);
}
function forbidden($word) {
  return (preg_match('/^admin/i', $word) ? 'false' : 'true');
}