123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- <?php namespace Laravel;
- class URI {
-
- public static $uri;
-
- public static $segments = array();
-
- public static function full()
- {
- return Request::getUri();
- }
-
- public static function current()
- {
- if ( ! is_null(static::$uri)) return static::$uri;
-
-
-
- $uri = static::format(Request::getPathInfo());
- static::segments($uri);
- return static::$uri = $uri;
- }
-
- protected static function format($uri)
- {
- return trim($uri, '/') ?: '/';
- }
-
- public static function is($pattern)
- {
- return Str::is($pattern, static::current());
- }
-
- public static function segment($index, $default = null)
- {
- static::current();
- return array_get(static::$segments, $index - 1, $default);
- }
-
- protected static function segments($uri)
- {
- $segments = explode('/', trim($uri, '/'));
- static::$segments = array_diff($segments, array(''));
- }
- }
|