php编程问题,帮忙看看,谢谢!
源码如下,<?php
header("Content-type:text/html;charset=utf-8");
$weibo = file_get_contents(' http://t.qq.com/zhudeyong');
$preg = '/<div class="msgCnt">(.*)<\/div><div class="mediaWrap">/Uis';
preg_match_all($preg, $weibo, $string);
foreach ($string[1] as $key=>$value){
echo delhtml($value)."<br/><br/><br/>";
}
function delhtml($str) // 清除HTML标签
{
$st = -1; //开始
$et = -1; //结束
$stmp = array();
$stmp[] = " ";
$len = strlen($str);
for($i = 0;$i < $len;$i++)
{
$ss = substr($str, $i, 1);
if (ord($ss) == 60) // ord("<")==60
{
$st = $i;
}
if (ord($ss) == 62) // ord(">")==62
{
$et = $i;
if ($st != -1)
{
$stmp[] = substr($str, $st, $et - $st + 1);
}
}
}
$str = str_replace($stmp, "", $str);
return $str;
}
?>
希望加入以下功能
问题1:当采集完所有后,截取前300个文字。
问题2:清除所有html代码。
问题3:如何取前$preg 三次匹配内容,即只采集前三条内容。
问题4:采集的内容编码为utf8,如何直接变为gbk。
谢谢,不懂php,望高手帮下忙,谢谢!
追问:不好意思,我学了一早上,就是整合不了,运行结果老是空白,能帮我把问题2.3.4在这个例子基础上整合一下,给我个源码吗?谢谢!