Preg匹配大写和小写用户输入

Vin*_*ein 0 php regex

我正在购买一张带有优惠券的购物车,店主告诉我,顾客似乎不愿意使用适当的套管来发行优惠券,并且不断抱怨优惠券不起作用的工作人员.

我最初只是简单地strtoupper()用户输入,但这将要求所有者只使用大写的优惠券代码,这是没有意义的.

我想对用户输入执行preg_match(),如果所有字符都正确则完全允许它匹配并完全忽略大小写.但是唉...我不知道如何使用正则表达式来获得我需要的东西.

这就是我现在所拥有的:

strtoupper ($this->request->post['coupon'])
Run Code Online (Sandbox Code Playgroud)

正如我所说,这对数据库中的大写优惠券代码起作用很大,但强制所有者将所有代码大写.

任何帮助将不胜感激.

-V

Ann*_*nne 6

只需将两者转换为相同的案例并进行比较:

if(strtolower($input) == strtolower($check))
Run Code Online (Sandbox Code Playgroud)

更好的是,使用strcasecmp()二进制安全不区分大小写的字符串比较:

if (strcasecmp($input, $check) == 0)
Run Code Online (Sandbox Code Playgroud)