PHP的一个语法问题PHP code$contents file_get_contents($url) if((preg_match_all(/(h1.*\/table)
PHP的一个语法问题
PHP code$contents = file_get_contents($url); if((preg_match_all('/(<h1.*<\/table>)/iUs', $contents, $match))){$contents = $match[1][0];} else{ (preg_match_all('/(<h1.*<\/ol>)/iUs',$contents,$match)) [color=#FF0000]$contents = $match[1][0];[/color]}
红色那行报错:
Parse error: syntax error, unexpected T_VARIABLE in
我这是要抓取网页的部分信息,网页有2种框架,正则就是这2种,所以想做个判断,不是第一种框架的正则就用第二种的正则来截取网页信息。
但是用if else语法报错。
分开写这2个正则的php代码,这2个都没错,合在一起就错了。不太了解PHP,求大家帮帮忙了。
[解决办法](preg_match_all('/(<h1.*<\/ol>)/iUs',$contents,$match)) <== 这里缺少行结束符“;”
[解决办法]操作放到循环里面去
$contents = '';
while($rows=mysql_fetch_array(mysql_query("select pl_title from pagelinks limit 1,10")))
{
$string=$rows['pl_title'];
$string1=urlencode($string);
$url = "http://localhost/index.php/"."$string1";
$contents = file_get_contents($url);
if((preg_match_all('/(<h1.*<\/table>)/iUs', $contents, $match)))
{
$contents .= $match[1][0];
}
else
{
(preg_match_all('/(<h1.*<\/ol>)/iUs',$contents,$match));
$contents .= $match[1][0];
}
}