我正在尝试检测字符串是否包含至少一个存储在数组中的URL。
这是我的数组:
$owned_urls = array('website1.com', 'website2.com', 'website3.com');
该字符串由用户输入并通过PHP提交。在确认页面上,我想检查输入的URL是否在数组中。
我尝试了以下方法:
$string = 'my domain name is website3.com'; if (in_array($string, $owned_urls)) { echo "Match found"; return true; } else { echo "Match not found"; return false; }
无论输入什么,返回值始终为“找不到匹配项”。
这是正确的做事方式吗?
尝试这个。
$string = 'my domain name is website3.com'; foreach ($owned_urls as $url) { //if (strstr($string, $url)) { // mine version if (strpos($string, $url) !== FALSE) { // Yoshi version echo "Match found"; return true; } } echo "Not found!"; return false;
如果要检查不区分大小写,请使用stristr()或stripos()。