wpseek.com
A WordPress-centric search engine for devs and theme authors
wp_parse_url › WordPress Function
Since4.4.0
Deprecatedn/a
› wp_parse_url ( $url, $component = -1 )
Parameters: (2) |
|
Links: | |
Returns: |
|
Defined at: |
|
Codex: | |
Change Log: |
|
A wrapper for PHP's parse_url() function that handles consistency in the return values across PHP versions.
Across various PHP versions, schemeless URLs containing a ":" in the query are being handled inconsistently. This function works around those differences.Source
function wp_parse_url( $url, $component = -1 ) { $to_unset = array(); $url = (string) $url; if ( str_starts_with( $url, '//' ) ) { $to_unset[] = 'scheme'; $url = 'placeholder:' . $url; } elseif ( str_starts_with( $url, '/' ) ) { $to_unset[] = 'scheme'; $to_unset[] = 'host'; $url = 'placeholder://placeholder' . $url; } $parts = parse_url( $url ); if ( false === $parts ) { // Parsing failure. return $parts; } // Remove the placeholder values. foreach ( $to_unset as $key ) { unset( $parts[ $key ] ); } return _get_component_from_parsed_url_array( $parts, $component ); }