What are some common methods for extracting specific values from URLs in PHP?

When working with URLs in PHP, it is common to need to extract specific values such as query parameters or segments. One common method for extracting values from URLs is to use the built-in functions like parse_url() and parse_str() to parse the URL and extract the desired values. Regular expressions can also be used to extract values from URLs based on specific patterns.

// Example 1: Extracting query parameters from a URL
$url = "http://example.com/page?param1=value1&param2=value2";
$query = parse_url($url, PHP_URL_QUERY);
parse_str($query, $params);
echo $params['param1']; // Output: value1

// Example 2: Extracting segments from a URL
$url = "http://example.com/page/segment1/segment2";
$segments = explode('/', parse_url($url, PHP_URL_PATH));
echo $segments[2]; // Output: segment2

// Example 3: Using regular expressions to extract a specific value from a URL
$url = "http://example.com/page/12345";
preg_match('/\/(\d+)$/', parse_url($url, PHP_URL_PATH), $matches);
echo $matches[1]; // Output: 12345