从给定的网址中,我想检查它是否包含//t.co
或twitter.com
。如果是,则跳过它,while循环应该继续。
if(preg_match($reg_exUrl, $tweet, $url)) {
preg_match_all($reg_exUrl, $tweet, $urls);
foreach ($urls[0] as $url) {
echo "Tiny url : {$url}<br>";
$full = MyURLDecode($url);
echo "Full url : $full<br>";
if (strpos($full, '//t.co') === true)
continue;
if (strpos($full, '//twitter.com') === true)
continue;
else if (strpos($full, '//bit.ly') !== true)
$full = MyURLDecode($full);
}
但是虽然url包含上面的关键字但是没有被跳过,strpos会失败吗?什么是替代品?
答案 0 :(得分:1)
strpos()
永远不会返回true 。它会在匹配时返回position
,或者在找不到匹配时返回false
。
答案 1 :(得分:0)
使用
strpos($full, '//t.co') === true
as
if(strpos($full, '//t.co') !== false)