note 70690 added to function.parse-url
| From: | alistair at 21degrees dot com dot au | Date: | Tue, 24 Oct 2006 02:21:24 +0000 |
| Subject: | note 70690 added to function.parse-url | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-119053@lists.php.net to get a copy of this message | ||
Heres a simple function to add the $component option in for PHP4. Haven't done exhaustive
testing, but should work ok.
<?php
## Defines only available in PHP 5, created for PHP4
if(!defined('PHP_URL_SCHEME')) define('PHP_URL_SCHEME', 1);
if(!defined('PHP_URL_HOST')) define('PHP_URL_HOST', 2);
if(!defined('PHP_URL_PORT')) define('PHP_URL_PORT', 3);
if(!defined('PHP_URL_USER')) define('PHP_URL_USER', 4);
if(!defined('PHP_URL_PASS')) define('PHP_URL_PASS', 5);
if(!defined('PHP_URL_PATH')) define('PHP_URL_PATH', 6);
if(!defined('PHP_URL_QUERY')) define('PHP_URL_QUERY', 7);
if(!defined('PHP_URL_FRAGMENT')) define('PHP_URL_FRAGMENT', 8);
function parse_url_compat($url, $component=NULL){
if(!$component) return parse_url($url);
## PHP 5
if(phpversion() >= 5)
return parse_url($url, $component);
## PHP 4
$bits = parse_url($url);
switch($component){
case PHP_URL_SCHEME: return $bits['scheme'];
case PHP_URL_HOST: return $bits['host'];
case PHP_URL_PORT: return $bits['port'];
case PHP_URL_USER: return $bits['user'];
case PHP_URL_PASS: return $bits['pass'];
case PHP_URL_PATH: return $bits['path'];
case PHP_URL_QUERY: return $bits['query'];
case PHP_URL_FRAGMENT: return $bits['fragment'];
}
}
?>
----
Server IP: 203.16.234.19
Probable Submitter: 60.226.121.48
----
Manual Page -- http://www.php.net/manual/en/function.parse-url.php
Edit -- https://master.php.net/note/edit/70690
Del: integrated -- https://master.php.net/note/delete/70690/integrated
Del: useless -- https://master.php.net/note/delete/70690/useless
Del: bad code -- https://master.php.net/note/delete/70690/bad+code
Del: spam -- https://master.php.net/note/delete/70690/spam
Del: non-english -- https://master.php.net/note/delete/70690/non-english
Del: in docs -- https://master.php.net/note/delete/70690/in+docs
Del: other reasons-- https://master.php.net/note/delete/70690
Reject -- https://master.php.net/note/reject/70690
Search -- https://master.php.net/manage/user-notes.php