Avatar ·

PHP中的str_starts_with和str_ends_with函数:如何检查字符串的开头和结尾?

大家好!我刚开始学习PHP,遇到了一个问题。我需要检查一个字符串是否以某个单词开头或以某个字符结尾。例如,我收到用户的email,想确认它是否以"@gmail.com"结尾或以"admin_"开头。\n\n我知道PHP有很多内置的字符串处理函数,但找不到简单的方法来做这件事。我试过使用substr()进行比较,但代码变得很冗长:\n\n```php\n$email = "admin_test@gmail.com";\nif (substr($email, 0, 6) === "admin_") {\n echo "这是管理员邮箱";\n}\nif (substr($email, -10) === "@gmail.com") {\n echo "这是Gmail";\n}\n```\n\n这样是可行的,但我觉得应该有更优雅的解决方案。我听说Python有startswith()和endswith()方法,Java有startsWith()和endsWith()。PHP有类似的东西吗?我使用的是PHP 7.4,但听说PHP 8有新的函数。请告诉我如何正确且优雅地解决这个问题。