首頁  >  文章  >  後端開發  >  PHP8中的函數:str_contains(),字串搜尋的新方法

PHP8中的函數:str_contains(),字串搜尋的新方法

WBOY
WBOY原創
2023-05-16 20:52:342269瀏覽

隨著PHP8的發布,該語言引入了一個新的字串搜尋函數str_contains(),這個函數在字串中搜尋指定的子字串,並傳回一個布林值來表示該字串是否包含指定的子字串。這個新函數提供了一種簡單且快速的方式,用於判斷字串中是否包含一個指定的子字串。以下我們來詳細了解str_contains()的用法及其優點。

一、str_contains()函數的語法和用法

str_contains()函數的語法如下:

str_contains($string, $substring);

其中,$string參數是要搜尋的字串,$ substring參數是要搜尋的子字串。函數會在指定字串中搜尋指定子字串,如果找到了該子字串,則傳回true,否則傳回false。

下面是一個簡單的範例程式碼,展示了str_contains()函數的用法:

$string = 'hello world';
if (str_contains($string, 'world')) {
    echo "Found world in the string";
} else {
    echo "Could not find world in the string";
}

上述程式碼輸出結果為:Found world in the string。

二、str_contains()相較於其他字串搜尋函數的優勢

在先前的版本中,可以使用strpos()函數來搜尋子字串。以下是一個使用strpos()函數的範例程式碼:

$string = 'hello world';
if (strpos($string, 'world') !== false) {
    echo "Found world in the string";
} else {
    echo "Could not find world in the string";
}

跟剛才的範例相比較,這段程式碼輸出結果同樣為Found world in the string。但是,strpos()函數和str_contains()函數有一個很大的差異:strpos()函數傳回子字串第一次出現的位置。如果第一次出現的位置是0,則會被誤解為傳回false,這就使得strpos()函數的回傳值與布林值類型不相容,所以必須使用全等(===)運算子來比較。

str_contains()函數比strpos()函數更為簡單。它傳回一個布林值,只是判斷字串中是否出現了指定的子字串,對於子字串的位置和重複出現次數不需要關心。因此,在現實的程式設計中,使用str_contains()比使用strpos()更為方便和可讀性更高。

三、結論

總的來說,str_contains()函數是一個在PHP8版本中非常實用的新函數,提供了一個方便、快速、可讀性高的方式來檢查字串中是否包含指定的子字串。與先前的strpos()函數相比,它更加直觀,使我們編寫的程式碼更加清晰易懂。

雖然在PHP8中引入了str_contains()函數,但是strpos()函數仍然有效,可以繼續使用。因此,我們需要在編程時,根據具體情況選擇合適的函數來完成字串搜尋的操作,以使我們的程式碼更有效率、簡潔。

以上是PHP8中的函數:str_contains(),字串搜尋的新方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn