php修改代码教程,修改一段代码

下面这段代码怎么改成http://localhost/GetAllPic.php? url=xxx

url=后面的网址就是要提交的网址不用点提交按钮

麻烦知道的大哥直接给代码,谢了

下载网页中所有图片

网页URL:

/i";

//函数preg_match_all负责在字符串$message中找到所有匹配正则表达式的字符串,并将结果保存在数组$matches中,如果匹配不成功,则数组的长度为0

preg_match_all($reg,$message,$matches);

for($i=0; $i< count($matches[0]); $i++){

//取出所有匹配结果。$matches为多维数组,维数的多少与正则表达式中的小括弧“()”的多少有关,此处只出现了一对,则为2维数组,$matches[0]中始终保存的是匹配的字符串,而

//$matches[1]则保存的是匹配正则表达式第一对括弧所匹配的内容,此处即为图片的URL

$matches[1][$i]=strtolower($matches[1][$i]);

//如果图片为相对路径,则将其转换为全路径。有两种相对路径,第一种是,如果第一个字符为"/",那是相对于host来说的相对路径,此时只需要加上host的URL即可转化为完全的URL。

//第二种是,相对于当前页面来说的相对路径,必须加上当前URL(除了文件名外,即变量$baseurl中的值)

if(!strpos('a'.$matches[1][$i],'http')){

if(strpos('a'.$matches[1][$i],'/')==1)

$matches[1][$i]='http://'.$main_url.$matches[1][$i];

else $matches[1][$i]=$baseurl.$matches[1][$i];

}

}

//调用array_unique函数过滤重复的图片URL

$img_array=array_unique($matches[1]);

//实例化图片下载类GetImage

$Gimg = new DownImage();

for($i=0; $i< count($img_array); $i++){

//在source属性中设置下载目标图片的URL,save_to中设置图片的保存目录。调用download方法开始下载,默认为使用cURL库进行下载,以$Gimg->download('gd')的形式调用download方法时

,则使用图像函数方式进行图片下载。

$Gimg->source = $img_array[$i];

$Gimg->save_to = './data/';

$FILE = $Gimg->download();

}

echo "下载完毕";

}

?>

回复讨论(解决方案)

if($_POST['submit'] != NULL){

$url=$_POST['url'];

去掉上面的if判断,直接使用$url = $GET['url']

你自己判断下$GET['url']的合法性就OK了。

function modify_build_url($params = array(), $url = NULL) {//my_debug(current_url());if (! $url) {$url = $_SERVER ['REQUEST_URI'];}$parts = parse_url ( $url );if (! is_array ( $parts )) {$parts = array ();}if (! array_key_exists ( 'host', $parts )) {$parts ['host'] = $_SERVER ['HTTP_HOST'];}$gets = array ();if (array_key_exists ( 'query', $parts )) {$query = $parts ['query'];parse_str ( $query, $gets );}if (! is_array ( $params )) {$params = array ();}if (! is_array ( $gets )) {$gets = array ();}foreach ( $params as $k => $v ) {$gets [$k] = $v;}$path = null;if (array_key_exists ( 'path', $parts )) {$path = $parts ['path'];}if (! $path) {$path = "/";}$ret = sprintf ( "http://%s%s?%s", $parts ['host'], $path, http_build_query ( $gets ) );return $ret;}....

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值