如何在 PHP 中显示以特定字母开头的数组元素

How can I show an array element that starts with a specific letter in PHP

这是我的数组:

$aCars = array("BMW", "Audi", "Opel", "Mercedes", "Ford", "Fiat");

我只想显示以字母 F 开头的数组元素。

但是最有效的方法是什么,我看到了更多这样的问题,但我想有一个最有效的方法来做到这一点。

foreach($aCars as $currentItem)
{
      if(strcmp(substr($currentItem, 0, 1),"F")==0)
      {
      //Do what you need here
      }

}
$aCars = ["BMW", "Audi", "Opel", "Mercedes", "Ford", "Fiat"];
foreach ($aCars as $model) {
    if ($model[0] == "F") {
        echo $model . " ";
    }
}

array_filter() 可能 会更快,因为它是机器代码,而不是解释 PHP 代码。

$filteredCars = array_filter($aCars, function($car) {
    return $car[0] == 'F';
});

可能不是最有效但简短的方法。匹配字符串 ^ 开头的字母 F/ 是模式的分隔符,可以是大多数非字母数字、非反斜杠、非空白字符:

$result = preg_grep('/^F/', $aCars);