首頁 >後端開發 >php教程 >如何檢查字串是否包含任何陣列元素(不區分大小寫)?

如何檢查字串是否包含任何陣列元素(不區分大小寫)?

Susan Sarandon
Susan Sarandon原創
2024-11-14 17:47:02385瀏覽

How to Check if a String Contains Any Array Element (Case-Insensitive)?

搜尋字串中的陣列項目(不區分大小寫)

在各種程式設計場景中,可能需要判斷給定的字串是否包含數組中指定的任何元素。當需要不區分大小寫時,此任務可能特別具有挑戰性。

為了解決這個問題,我們可以利用名為 contains() 的自訂 PHP 函數。此函數有效地檢查字串($str) 是否包含數組中存在的任何項目($arr):

function contains($str, array $arr)
{
    foreach($arr as $a) {
        if (stripos($str,$a) !== false) return true;
    }
    return false;
}

循環中使用的stripos() 函數執行不區分大小寫的搜尋字串中的數組元素。如果找到任何匹配,則函數傳回 true;否則,傳回 false,表示字串不包含任何指定的陣列元素。

例如,考慮以下程式碼片段:

$string = 'My nAmE is Tom.';
$array = array("name","tom");
if(contains($string,$array))
{
    // The string contains at least one element from the array, so do something.
}

contains() 函數迭代數組中的每個元素,執行不區分大小寫的搜尋。在此範例中,字串包含滿足條件的元素「name」。結果,將執行 if 語句,並且可以執行任何所需的操作。

透過使用此自訂函數,程式設計師可以有效地確定字串是否包含陣列中的任何項目,而不管大小寫。

以上是如何檢查字串是否包含任何陣列元素(不區分大小寫)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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