Home  >  Article  >  Backend Development  >  How to convert URL to array in PHP

How to convert URL to array in PHP

PHPz
PHPzOriginal
2023-04-24 14:48:52682browse

With the development of the Internet, URLs are used more and more frequently, and for programming, converting URLs into arrays is a basic operation. Especially in PHP programming, the need to convert a URL into an array is very common. This article will introduce how to convert a URL to an array in PHP and provide some practical examples.

1. Basic method of converting URL to array

In PHP, converting URL to array can be achieved through the following steps:

  1. Use parse_url( ) function parses a URL into URL components.
  2. Use the parse_str() function to parse the query part in the URL component into an array.
  3. Return the parsed array.

The following is a basic PHP code example:

$url = 'http://www.example.com/index.php?id=1&page=2';
$urlComponents = parse_url($url);
parse_str($urlComponents['query'], $queryParameters);
print_r($queryParameters);

Among them, $url represents the URL to be parsed, $urlComponents represents the parsed URL component, and $queryParameters represents the parsed URL. Query parameter array.

The output result of the above code is:

Array
(
    [id] => 1
    [page] => 2
)

2. Extended usage of URL conversion to array

In actual programming, we may need to perform more complex operations on the URL, as follows Here are some examples of extended usage:

  1. Processing URL paths

In addition to query parameters, each level of directory in the URL path may also contain useful information, such as the following URL:

http://www.example.com/products/computers/desktops/index.php?id=1&page=2

We need to parse the path information and return it as part of the array. You can use the explode() function to decompose the URL path into an array according to the "/" delimiter, and parse the last item of the array as a file name. The sample code is as follows:

$url = 'http://www.example.com/products/computers/desktops/index.php?id=1&page=2';
$urlComponents = parse_url($url);
$pathSegments = explode('/', $urlComponents['path']);
$fileName = array_pop($pathSegments);
print_r($pathSegments);

The output result is:

Array
(
    [0] => products
    [1] => computers
    [2] => desktops
)
  1. Processing URL anchor points

URL anchor points are usually used to jump to in the page Specifies the location, but may sometimes contain useful information. We need to parse the anchor information and return it as part of the array. Use the parse_url() function to return the anchor information as part of the URL component. The sample code is as follows:

$url = 'http://www.example.com/index.php?id=1&page=2#section-3';
$urlComponents = parse_url($url);
if (isset($urlComponents['fragment'])) {
    $fragment = explode('-', $urlComponents['fragment'])[1];
    echo $fragment;
} else {
    echo 'No fragment found';
}

The output result is:

3

If there is no anchor in the URL, "No" is output. fragment found".

3. Scenarios of using URLs to convert to arrays

Converting URLs to arrays is very practical in actual programming. Here are some examples of usage scenarios:

  1. Listening URL parameters

When we need to update page content based on changes in URL parameters, converting the URL into an array can conveniently monitor the values ​​of the URL parameters and perform corresponding operations when they change.

  1. Writing Routers

In web applications, routers are used to route requests to the correct handler. The router usually needs to parse the controller, operation, parameter and other information from the URL, and call the corresponding handler based on this information. Converting URLs to arrays is an important step in parsing URLs.

  1. Parsing crawler data

In web crawlers, converting URLs into arrays can easily parse the structure and content of the website. By parsing the query parameters, path information, anchor points, etc. in the URL, we can understand the structure and content of the website, helping us better crawl data.

4. Summary

This article introduces the basic methods and some extended usages of converting URLs into arrays in PHP, as well as some scenarios for using this function. By converting the URL into an array, we can more conveniently manipulate the information contained in the URL and implement more functions.

The above is the detailed content of How to convert URL to array in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn