时间:2021-07-01 10:21:17 帮助过:21人阅读
已把主要???集成??,加前後?你想怎?加都可以了。
(.*?)<\/td>/is', $content, $keywords); $data = $keywords[1]; $result = array(); foreach($data as $val){ preg_match_all('/(.*?)<\/a>/is', $val, $tmp); array_push($result, array('name'=>$tmp[2][0],'url'=>'http://top.baidu.com'.substr($tmp[1][0],1))); } return $result;}function getTc($content){ // tc preg_match_all('/(.*?)<\/td>/is', $content, $tc); $data = $tc[1]; $result = array(); foreach($data as $val){ preg_match_all('/(.*?)<\/a>/is', $val, $tmp); array_push($result, array('brief'=>$tmp[1][0], 'news'=>$tmp[1][1], 'tieba'=>$tmp[1][2])); } return $result;}function getNum($content){ // last preg_match_all('/ (.*?)<\/td>/is', $content, $last); //icon-rise up icon-fall down $data = $last[1]; $result = array(); foreach($data as $val){ preg_match_all('/ (.*?)<\/span>/is', $val, $tmp); array_push($result, array('flag'=>str_replace('icon-','',$tmp[1][0]), 'num'=>$tmp[2][0])); } return $result;}$url = 'http://top.baidu.com/buzz?b=26&c=1&fr=topcategory_c1';$content = getContent($url);$result = array();$keywords = getKeywords($content);$tc = getTc($content);$num = getNum($content);for($i=0,$len=count($keywords); $i<$len; $i++){ $tmp = array( 'name' => $keywords[$i]['name'], 'url' => $keywords[$i]['url'], 'brief' => $tc[$i]['brief'], 'news' => $tc[$i]['news'], 'tieba' => $tc[$i]['tieba'], 'flag' => $num[$i]['flag'], 'num' => $num[$i]['num'] ); array_push($result, $tmp);}echo ' ';print_r($result);echo '';?>?集后的??格式如下:
Array( [0] => Array ( [name] => 匆匆那年 [url] => http://top.baidu.com/detail?b=26&c=1&w=%B4%D2%B4%D2%C4%C7%C4%EA [brief] => http://baike.baidu.com/search/word?word=%B4%D2%B4%D2%C4%C7%C4%EA [news] => http://news.baidu.com/ns?tn=news&from=news&cl=2&rn=20&ct=1&word=%B4%D2%B4%D2%C4%C7%C4%EA [tieba] => http://tieba.baidu.com/f?kw=%B4%D2%B4%D2%C4%C7%C4%EA [flag] => rise [num] => 162540 ) [1] => Array ( [name] => 一个人的武林 [url] => http://top.baidu.com/detail?b=26&c=1&w=%D2%BB%B8%F6%C8%CB%B5%C4%CE%E4%C1%D6 [brief] => http://baike.baidu.com/search/word?word=%D2%BB%B8%F6%C8%CB%B5%C4%CE%E4%C1%D6 [news] => http://news.baidu.com/ns?tn=news&from=news&cl=2&rn=20&ct=1&word=%D2%BB%B8%F6%C8%CB%B5%C4%CE%E4%C1%D6 [tieba] => http://tieba.baidu.com/f?kw=%D2%BB%B8%F6%C8%CB%B5%C4%CE%E4%C1%D6 [flag] => rise [num] => 75428 ) [2] => Array ( [name] => 星际穿越 [url] => http://top.baidu.com/detail?b=26&c=1&w=%D0%C7%BC%CA%B4%A9%D4%BD [brief] => http://baike.baidu.com/search/word?word=%D0%C7%BC%CA%B4%A9%D4%BD [news] => http://news.baidu.com/ns?tn=news&from=news&cl=2&rn=20&ct=1&word=%D0%C7%BC%CA%B4%A9%D4%BD [tieba] => http://tieba.baidu.com/f?kw=%D0%C7%BC%CA%B4%A9%D4%BD [flag] => rise [num] => 70538 ) [3] => Array ( [name] => 心花路放 [url] => http://top.baidu.com/detail?b=26&c=1&w=%D0%C4%BB%A8%C2%B7%B7%C5 [brief] => http://baike.baidu.com/search/word?word=%D0%C4%BB%A8%C2%B7%B7%C5 [news] => http://news.baidu.com/ns?tn=news&from=news&cl=2&rn=20&ct=1&word=%D0%C4%BB%A8%C2%B7%B7%C5 [tieba] => http://tieba.baidu.com/f?kw=%D0%C4%BB%A8%C2%B7%B7%C5 [flag] => fall [num] => 68233 ) 。。。)function getContent 修改?以下代?。
function getContent($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT, 300); $response = curl_exec($ch); if($error=curl_error($ch)){ die($error); } curl_close($ch); $content = iconv('GB2312','UTF8//IGNORE',$response); return $content;}
已把主要???集成??,加前後?你想怎?加都可以了。
(.*?)<\/td>/is', $content, $keywords); $data = $keywords[1]; $result = array(); foreach($data as $val){ preg_match_all('/(.*?)<\/a>/is', $val, $tmp); array_push($result, array('name'=>$tmp[2][0],'url'=>'http://top.baidu.com'.substr($tmp[1][0],1))); } return $result;}function getTc($content){ // tc preg_match_all('/(.*?)<\/td>/is', $content, $tc); $data = $tc[1]; $result = array(); foreach($data as $val){ preg_match_all('/(.*?)<\/a>/is', $val, $tmp); array_push($result, array('brief'=>$tmp[1][0], 'news'=>$tmp[1][1], 'tieba'=>$tmp[1][2])); } return $result;}function getNum($content){ // last preg_match_all('/ (.*?)<\/td>/is', $content, $last); //icon-rise up icon-fall down $data = $last[1]; $result = array(); foreach($data as $val){ preg_match_all('/ (.*?)<\/span>/is', $val, $tmp); array_push($result, array('flag'=>str_replace('icon-','',$tmp[1][0]), 'num'=>$tmp[2][0])); } return $result;}$url = 'http://top.baidu.com/buzz?b=26&c=1&fr=topcategory_c1';$content = getContent($url);$result = array();$keywords = getKeywords($content);$tc = getTc($content);$num = getNum($content);for($i=0,$len=count($keywords); $i<$len; $i++){ $tmp = array( 'name' => $keywords[$i]['name'], 'url' => $keywords[$i]['url'], 'brief' => $tc[$i]['brief'], 'news' => $tc[$i]['news'], 'tieba' => $tc[$i]['tieba'], 'flag' => $num[$i]['flag'], 'num' => $num[$i]['num'] ); array_push($result, $tmp);}echo ' ';print_r($result);echo '';?>
为什么我测试时,这个数组输出的是空的你的php文件是否utf8
你的php文件是否utf8
是的那你先把getContent的返回?出,看看有什?。
?了,你把????打?,如果白屏估?是??。你是否有安?curl?
在?面?加上
ini_set('display_errors','on');
error_reporting(E_ALL);
看看有什??。如果提示curl?有安?的,
可以改getContent?
function getContent($url){ $response = file_get_contents($url); // ?句代替curl $content = iconv('GB2312','UTF8//IGNORE',$response); return $content;}什么都没输出
编码换成ANSI也不成
你测试可用的文件能打包的吗
Notice: iconv() [function.iconv]: Wrong charset, conversion from `GB2312' to `UTF8//IGNORE' is not allowed in F:\PHPnow-1.5.6\vhosts\test.php on line 15
$content = iconv('GB2312','UTF-8',$response);
这样就成了
问题我是个菜鸟,这个数组要怎么取出来正常使用呢$content = iconv('GBK','UTF-8//IGNORE', $response);
Notice: iconv() [function.iconv]: Wrong charset, conversion from `GB2312' to `UTF8//IGNORE' is not allowed in F:\PHPnow-1.5.6\vhosts\test.php on line 15$content = iconv('GB2312','UTF8//IGNORE',$response);
改?
$content = iconv('GBK','UTF8//IGNORE',$response);
??拿到???不知道怎?用。。。呵呵。
你想?示的?子是怎?的,就做成怎?的html,然後在需要的地方,插入????。数组一巧不同,郁闷了
其实我只要成这样就行的
匆匆那年匆匆那年匆匆那年匆匆那年匆匆那年??出的完整例子,你好好??下。
中?你想改什?,直接改就可以了。
(.*?)<\/td>/is', $content, $keywords); $data = $keywords[1]; $result = array(); foreach($data as $val){ preg_match_all('/(.*?)<\/a>/is', $val, $tmp); array_push($result, array('name'=>$tmp[2][0],'url'=>'http://top.baidu.com'.substr($tmp[1][0],1))); } return $result;}function getTc($content){ // tc preg_match_all('/(.*?)<\/td>/is', $content, $tc); $data = $tc[1]; $result = array(); foreach($data as $val){ preg_match_all('/(.*?)<\/a>/is', $val, $tmp); array_push($result, array('brief'=>$tmp[1][0], 'news'=>$tmp[1][1], 'tieba'=>$tmp[1][2])); } return $result;}function getNum($content){ // last preg_match_all('/ (.*?)<\/td>/is', $content, $last); //icon-rise up icon-fall down $data = $last[1]; $result = array(); foreach($data as $val){ preg_match_all('/ (.*?)<\/span>/is', $val, $tmp); array_push($result, array('flag'=>str_replace('icon-','',$tmp[1][0]), 'num'=>$tmp[2][0])); } return $result;}$url = 'http://top.baidu.com/buzz?b=340&c=1&fr=topbuzz_b339_c1';$content = getContent($url);$result = array();$keywords = getKeywords($content);$tc = getTc($content);$num = getNum($content);for($i=0,$len=count($keywords); $i<$len; $i++){ $tmp = array( 'name' => $keywords[$i]['name'], 'url' => $keywords[$i]['url'], 'brief' => $tc[$i]['brief'], 'news' => $tc[$i]['news'], 'tieba' => $tc[$i]['tieba'], 'flag' => $num[$i]['flag'], 'num' => $num[$i]['num'] ); array_push($result, $tmp);}?> baidu
=$i ?> ">=$val['name'] ?> ">?介 ">新? ">?吧 =$val['num'] ?> 人气教程排行
- 174次 1 php如何获取跳转前的url
- 174次 2 php格林威治时间转换成当前时间的方法
- 174次 3 为什么php不能做大型系统?
- 174次 4 range函数怎么用
- 174次 5 php中计算页面加载时间几种方法总结_PHP教程
- 174次 6 求帮助,关于paypal支付返回值修改订单状态
- 174次 7 typecho怎么配置文章内容页?
- 174次 8 PhpStorm左侧structure不显示文件的方法列表是这么回事?
- 174次 9 查看PHP的环境变量_PHP
- 174次 10 PHP Primary script unknown 解决方法总结
- 174次 11 php的命名空间与自动加载实现方法
- 174次 12 解决laravel 出现ajax请求419(unknown status)的问题
- 173次 13 php 如何删除mysql记录
- 173次 14 PHP如何替换数组中的指定元素
- 173次 15 怎么去除字符串中非汉字、非字母、非数字的字符
- 173次 16 mysql如何一次执行多条SQL语句
- 173次 17 修改header里面的Connection为close解决方法
- 173次 18 PHP基于session.upload_progress 实现文件上传进度显示功能详解
- 173次 19 php5.6.x到php7.0.x特性小结
- 172次 20 php为什么会出现504错误