如何在 PHP 中检查字符串是否以指定子串开头?
大家好!我是 PHP 新手,遇到了一个问题:需要检查字符串是否以特定单词或字符开头。例如,我有一个包含文件名的变量:
```php
$filename = "report_2023.pdf";
```
我需要知道这个字符串是否以 "report_" 开头。在 JavaScript 中我会用 `startsWith()`,但 PHP 没有这个方法。我试过用 `strpos`:
```php
if (strpos($filename, "report_") !== false) {
echo "以 report_ 开头";
}
```
但这会检查子串是否存在于字符串中任何位置,而不仅仅是开头。如果文件名为 "my_report_2023.pdf",条件也会成立,而我需要严格从开头开始。我还试过 `substr`:
```php
if (substr($filename, 0, 7) === "report_") {
echo "以 report_ 开头";
}
```
这能工作,但看起来笨拙,而且需要手动计算子串长度。有没有更优雅的方法?请告诉我如何在 PHP 中正确检查字符串开头,以及哪种方式被认为是最佳实践?