在 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中文网其他相关文章!