PHP:怎樣判斷字符串是否以某個字符串開始

最近更新時間 2020-02-27 10:36:25

在 PHP 中,經常會用到判斷一個字符串是否是某個字符串開始,怎樣判斷一個字符串是否某個字符串開頭呢?

有以下幾種方法:

1. 使用 strpos 函數

strpos 函數查找字符串首次出現的位置,如果沒找到,返回 FALSE。如果查詢到字符串,會返回字符串的位置,字符串位置是從0開始,而不是從1開始的。比較結果必須使用 === 進行判斷。

<?php

$haystack = "abcd";
$needle = "a";
if (strpos($haystack, $needle) === 0) {
  //Starts with it
}

 2. 使用 substr 函數

substr 函數返回字符串的子串。根據返回的子串判斷是否以某個字符串開始,如下所示:

<?php

$haystack = "abcd";
$needle = "a";
if (strlen($needle) !== 0 
  && substr($haystack, 0, strlen($needle)) === $needle) {
  //Starts with it
}
注意:必須添加 strlen($needle) !== 0 判斷,不然 $needle = "" 時會判斷為包含。
rss_feed