在PHP中,我们有时需要将URL转换为有用的数组,以便我们可以从中获取有关页面的信息。 在本文中,我们将学习如何使用PHP函数将URL转换为数组。
将URL转换为数组需要使用PHP中的parse_url()函数和parse_str()函数。 Parse_url()函数将URL分解为多个部分,并且parse_str()函数分解查询字符串并将其转换为关联数组。
首先,让我们来看parse_url()函数的语法:
parse_url($url, $component);
在这个语法中,$url参数是要分解的URL,而$component参数是要返回的URL组件。 $component参数是可选的,它可以是下面中的任何一个:
如果未指定$component参数,则parse_url()函数将返回一个关联数组,其中包含URL的所有部分。
下面是一个示例代码,演示如何使用parse_url()函数将URL分解为其组成部分:
$url = "http://www.example.com/index.php?id=1&name=john#about"; $url_parts = parse_url($url); echo "<pre class="brush:php;toolbar:false">"; print_r($url_parts); echo "";
以上代码将产生以下输出:
Array ( [scheme] => http [host] => www.example.com [path] => /index.php [query] => id=1&name=john [fragment] => about )
接下来,我们使用parse_str()函数将查询字符串转换为关联数组。parse_str()函数的语法如下:
parse_str($query, $result);
在这个语法中,$query参数是要分解的查询字符串,而$result参数是要保存查询字符串转换后的关联数组。
下面是一个示例代码,演示如何使用parse_str()函数将查询字符串转换为关联数组:
$url = "http://www.example.com/index.php?id=1&name=john#about"; $url_parts = parse_url($url); parse_str($url_parts['query'], $query); echo "<pre class="brush:php;toolbar:false">"; print_r($query); echo "";
以上代码将产生以下输出:
Array ( [id] => 1 [name] => john )
最后,我们将使用parse_url()函数和parse_str()函数将URL转换为一个包含URL的所有组件和查询字符串的关联数组。
以下是将URL转换为数组的示例代码:
$url = "http://www.example.com/index.php?id=1&name=john#about"; $url_parts = parse_url($url); parse_str($url_parts['query'], $query); $result = array( 'scheme' => $url_parts['scheme'], 'host' => $url_parts['host'], 'port' => $url_parts['port'], 'user' => $url_parts['user'], 'pass' => $url_parts['pass'], 'path' => $url_parts['path'], 'query' => $url_parts['query'], 'fragment' => $url_parts['fragment'], 'query_array' => $query ); echo "<pre class="brush:php;toolbar:false">"; print_r($result); echo "";
以上代码将产生以下输出:
Array ( [scheme] => http [host] => www.example.com [port] => [user] => [pass] => [path] => /index.php [query] => id=1&name=john [fragment] => about [query_array] => Array ( [id] => 1 [name] => john ) )
现在,我们已经成功地将URL转换为一个包含URL的所有组件和查询字符串的关联数组了!
总结:
在PHP中,使用parse_url()函数和parse_str()函数可以轻松地将URL转换为数组。这种方法非常有用,因为它使我们能够从URL中提取我们需要的信息。我们可以使用转换后的数组来执行各种任务,例如生成网站地图或提取有用的SEO信息。
以上是php怎么将URL转换为数组的详细内容。更多信息请关注PHP中文网其他相关文章!