在 PHP 中,經常需要確定字串是否包含數組中儲存的任何元素。在根據已建立的值清單驗證使用者提交的資料時會遇到這種情況。
利用 in_array() 執行此檢查可能會產生意外結果,因為它評估嚴格相等。另一種方法是迭代數組元素並使用 strstr()、stristr() 或 strpos() 將它們與字串進行比較。
考慮以下擁有的URL 陣列:
$owned_urls = array('website1.com', 'website2.com', 'website3.com');
要檢查使用者輸入的字串是否包含任何這些URL,請實作以下程式碼:
<code class="php">$string = 'my domain name is website3.com'; foreach ($owned_urls as $url) { if (strpos($string, $url) !== FALSE) { echo "Match found"; return true; } } echo "Not found!"; return false;</code>
Stristr()ortripos()` 應該用於case -不敏感的比較。
以上是如何在 PHP 中檢查字串是否包含數組中的元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!