如何同时申请大写和小写的If陈述

时间:2018-12-27 13:55:26

标签: php string-comparison

我想在脚本中添加一个If语句。如果得到任何提及的名称,它将转换为admin。如果脚本的名称类似于arsh,则它将其转换为admin。但是,如果脚本的名称类似于ARSH,Arsh,arSh,arsH,那么它也应该将其转换为admin ...我无法手动定义每个工作。因此,正在寻找完成这项工作的好方法。

if ($name=='arsh' || $name=='saif' || $name=='john' || $name=='smith'){
    $name = 'Admin';
}

将大写字母或小写字母转换为管理员

2 个答案:

答案 0 :(得分:2)

您可以将小写输入名称与小写文字进行比较:

$lname = strtolower($name);
if ($lname == 'arsh' || $lname == 'saif' || $lname == 'john' || $lname == 'smith') {
    $name = 'Admin';
}

答案 1 :(得分:2)

您可以使用strcasecmp(),它不需要更改大小写或更改变量:

if (strcasecmp($name, 'arsh') === 0 || strcasecmp($name, 'saif') === 0 || strcasecmp($name, 'john') === 0 || strcasecmp($name, 'smith') === 0){
    $name = 'Admin';
}

或者在进行比较之前,只需将名称转换为upperlowercase。如果需要保持原始值不变,只需确保将其分配给另一个变量即可。

$name = strtolower($name);
if ($name=='arsh' || $name=='saif' || $name=='john' || $name=='smith'){
    $name = 'Admin';
}