我正在创建一个登录信息,并希望允许我的用户通过用户名或电子邮件登录。我如何检查一个字符串是否包含一个字母,在这种情况下@所以我可以正确处理它。我会使用strstr
还是strpos
?谢谢!
答案 0 :(得分:10)
要检查字符串是否包含您可以使用的字母
if (strpos($source_string, $letter) !== false) { ... }
答案 1 :(得分:5)
您可以使用其中之一。由于@
不应该出现在开头,因此您甚至不需要strpos
结果布尔化解决方法。
如果您想声明它是有效的电子邮件地址,请尝试
filter_var($str, FILTER_VALIDATE_EMAIL)
答案 2 :(得分:1)
manual page for strstr(第二个注释)指出strpos比strstr更少的内存密集,如果你只是发现它是否发生。因此,请使用strpos。