當您來到這個頁面時,您可能正在尋找更簡單的東西:一個函式,可以檢查較大的字串中是否從特定索引開始存在較小的字串。使用 substr_compare() 來執行此操作可能會使您的程式碼變得雜亂,因為您需要檢查您的字串是否夠長(以避免警告),手動指定短字串的長度,並且像許多字串函式一樣,執行整數比較來回答是非題。
我寫了一個簡單的函式,用來判斷 $str 是否存在於 $mainStr 中。如果指定了 $loc,則 $str 必須從該索引位置開始;否則,將搜尋整個 $mainStr。
<?php
function contains_substr($mainStr, $str, $loc = false) {
if ($loc === false) return (strpos($mainStr, $str) !== false);
if (strlen($mainStr) < strlen($str)) return false;
if (($loc + strlen($str)) > strlen($mainStr)) return false;
return (strcmp(substr($mainStr, $loc, strlen($str)), $str) == 0);
}
?>