I'm trying to create URL parse class., so i can check URL Segment / part,
Example:
- http://localhost/myproject/class/method/arg/other (localhost)
- http://www.myproject.com/class/method/arg/other (live site)
- http://www.myproject.com/class/method/arg/other?param=value (with get param)
In urls above:
$url->segment(1)
: class$url->segment(2)
: method
If argument null, it will return the last segment:
$url->segment()
: other
I need suggestions for improvement this class, here is the code:
<?php
class url
{
private $url;
public function segment($arg=null)
{
if($arg==null)
{
$this->url = str_replace(BASEDIR,'',$_SERVER['REQUEST_URI']);
if(isset($_GET))
{
$this->url = explode('?',$this->url);
$this->url = $this->url[0];
}
$this->url = explode('/', trim($this->url, '/'));
return end($this->url);
}
else
{
$this->url = str_replace(BASEDIR,'',$_SERVER['REQUEST_URI']);
if(isset($_GET))
{
$this->url = explode('?',$this->url);
$this->url = $this->url[0];
}
$this->url = explode('/', trim($this->url, '/'));
array_unshift($this->url, null);
unset($this->url[0]);
if(isset($this->url[$arg]))
{
return $this->url[$arg];
}
else
{
return null;
}
}
}
}
?>