麻辣堂|资源主站|开发论坛|在线手册
首页 Apache Linux Java MySQL 注册帮助 
PHP项目开发组是PHP开发资源网于2007组年建成立的项目开发团队,目前核心开发成员有27人, 项目协作成员8名.下设7个开发组,主要承接大/中型网站项目开发任务。

    由于开发任务较多,人员比较紧张,现面向社会招聘全职或者兼职开发人员,不管你是在校大学生,还是全职开发人员,以及SOHO都可以联系本站,我们可以长期合作,并为您带来丰厚的报酬。
  您现在的位置:PHP开发资源网 > 麻辣堂 > 详细资料
待解决
解析网页里的 link,包括 mailto, http, https
悬赏分:20 - 2007年08月22日

看到这里( http://www.phpx.com/happy/thread-119840-1-1.html )有人要 ,偶就抽空弄了个,
[php]
<?php

/**
* $Id: parseLInk.php,v 1.4 2006/06/30 06:35:00 Administrator Exp Administrator $
*
* Filename : parseLInk.php
* Author : Dummy | Zandy | 额系菜屁屁
* Email : lianxiwoo@gmail.com | hotmail.com
* Create : 200605
* LastMod : 2006
* Usage :
*/

ini_set('display_errors', 1);
error_reporting(E_ALL ^ E_NOTICE);
//header("Content-type:text/html;charset=utf-8");

$url = 'http://www.phpx.com/happy/thread-119840-1-1.html';

$url = 'http://www.phpx.com/happy/thread-119396-7-1.html';

$parse_url = parse_url($url);

p($parse_url);

$url_pre = $parse_url['scheme'].'://'.$parse_url['host'].dirname($parse_url['path']);

$urls = array(); // 将解析保存结果

$a = file_get_contents($url);

$preg = "/\]+)\>/is";

$preg = "/\]*href\=[\"']?([^>'\"]+)[\"']?[^>]*\>/is";


$s = preg_match_all($preg, $a, $m);

p($m);

foreach ($m[1] as $k => $v){
$v = trim($v);
if (substr($v, 0, 1) == '#'){
continue;
}elseif (strtolower(substr($v, 0, 6)) == 'mailto'){
$v = trim(strstr($v, ":"));
$v = trim(substr($v, 1));
if (strlen($v) <= 3 || false === strpos($v, '@')){
continue;
}
$urls['mailto'][] = $v;
}elseif (strtolower(substr($v, 0, 5)) == 'https') {
if (false !== strpos($v, " ")){
$v = substr($v, 0, strpos($v, " "));
}
if (strlen($v) <= 8){
continue;
}
$urls['https'][] = $v;
}elseif (strtolower(substr($v, 0, 4)) == 'http') {
if (false !== strpos($v, " ")){
$v = substr($v, 0, strpos($v, " "));
}
if (strlen($v) <= 7){
continue;
}
$urls['http'][] = $v;
}else{
if (false !== strpos($v, " ")){
$v = substr($v, 0, strpos($v, " "));
}
if ($v && substr($v, 0, 1) != '/'){
$v = '/'.$v;
}
$urls['http'][] = $url_pre.$v;
}
}

p($urls); // 打印解析结果

/**
*
* @createtime
* @author Dummy | Zandy
* @modifiedby $LastChangedBy: $
* @param
* @return
* @throws none
*/
function p($s){
echo '

';<br /> print_r($s);<br /> echo '';
}

?>[/php]

把文件名的 .rar 去掉。
parseLink.php.rar

提问者:额系菜屁屁   08-22 08:08
答复
路过。。。顺便帮顶:)
回答者:玉米づ冰冻可乐 - 瓦岗村民 8-22 09:10
我也来回答:
不管你有没有帮助我们,瓦岗寨8万村民将感谢你。。。。。

为防止灌水,您需要计算一道数学题: 答案:
37 + 71 = ? 请将计算结果填在上面

 
[]
©2007 PhpRes.COM