我有一个这样的网址:
http://ar.com.expedia.www/Mendoza-Hoteles-Mod-Hotels-Mendoza.h3385807.Informacion-Hotel?chkin=01/05/2014&chkout=04/05/2014&rm1=a2&请注意,在url的末尾,我需要从restful web服务中获取这个url。如何获取整个url作为参数,包括尾随符号。忽略反向域。它已经被处理好了。
我试过这样做:
$url = array_shift($_GET);
foreach ($_GET as $key => $value) {
$url .= '&' . $key . (($value == '') ? '' : '=') . $value;
}发布于 2014-08-03 14:47:49
从parse_url开始:
var_dump(
parse_url("http://ar.com.expedia.www/Mendoza-Hoteles-Mod-Hotels-Mendoza.h3385807.Informacion-Hotel?chkin=01/05/2014&chkout=04/05/2014&rm1=a2&")
);结果将是
array(4) {
["scheme"]=>
string(4) "http"
["host"]=>
string(18) "ar.com.expedia.www"
["path"]=>
string(62) "/Mendoza-Hoteles-Mod-Hotels-Mendoza.h3385807.Informacion-Hotel"
["query"]=>
string(42) "chkin=01/05/2014&chkout=04/05/2014&rm1=a2&"
}然后,您可以使用explode让["query"]继续前进。
发布于 2014-08-03 14:59:46
使用regex的示例
看看这是不是你想要的
<?php
$a="http://ar.com.expedia.www/Mendoza-Hoteles-Mod-Hotels-Mendoza.h3385807.Informacion- Hotel?chkin=01/05/2014&chkout=04/05/2014&rm1=a2&";
preg_match("/(?:http(?:s)?:\/\/)(.+)$/","$a",$result);
echo $result[1];
?>发布于 2014-10-17 12:38:22
给你!
<?php
$url = 'http://www.IrfanAnsari.com/embedviz?q=select+col9+from+1c16ZytvOGsazT5r4borWzDSKmRy1dyeCqzOHdnWb&viz=MAP&h=false&lat=28.098107336734692&lng=68.93999515039059&t=1&z=6&l=col9&y=2&tmplt=2&hml=GEOCODABLE';
function grab_url($url) {
if(!empty($url)) {
$urllist=parse_url($url);
if(is_array($urllist) && isset($urllist["query"])) {
$keyvalue_list=explode("&",($urllist["query"]));
$keyvalue_result=array();
foreach($keyvalue_list as $key=>$value) {
$keyvalue=explode("=",$value);
if(count($keyvalue)==2)
$keyvalue_result[$keyvalue[0]]=$keyvalue[1];
}
}
}
return $keyvalue_result;
}
var_dump( grab_url($url) );
?>https://stackoverflow.com/questions/25105719
复制相似问题