Версия для печати

JFactory::getURI() или URI. Получить текущий URL в Joomla. Абсолютный, относительный или домен.

Оцените материал
(6 голосов)

Рассмотрим основные методы класса для анализа URI и предоставления общего интерфейса к Joomla Framework и для доступа и управления URI.

И так для начало нужно определить класс:

$uri = JFactory::getURI();

или

use Joomla\CMS\Uri\Uri;

Послет чего можно обращаться к этому классу в разные методы.

 

getFragment

$uri = JFactory::getURI();
$uri->getFragment();

URI::getFragment();

Вернет строку якоря. Все после "#".

Если url http://mysite.ru#hello, то вернет hello.

getHost

$uri = JFactory::getURI();
$uri->getHost();

URI::getHost();

Вернет имя хоста или IP, в противном случае 0.

Если url http://mysite.ru/page1/page2?id=7#hello, то вернет mysite.ru.

getPath

$uri = JFactory::getURI();
$uri->getPath();

URI::getPath();

Вернет строку пути

Если url http://mysite.ru/page1/page2?id=7#hello, то вернет /page1/page2.

getPort

$uri = JFactory::getURI();
$uri->getPort();

URI::getPort();

Вернет номер порта

Если url 'http':80 или 'ftp':21.

getQuery

$uri = JFactory::getURI();
$uri->getQuery(false);

URI::getQuery(false);

Вернет строку запроса если указанно false или массив если указанно true.

Если url http://mysite.ru/page1/page2?id=7&catid=33#hello, то вернет id=7&catid=33.

getScheme

$uri = JFactory::getURI();
$uri->getScheme();

URI::getScheme();

Вернет строку запроса если указанно false или массив если указанно true.

Если url http://mysite.ru, то вернет http (https, ftp).

isSsl

$uri = JFactory::getURI();
$uri->isSsl();

URI::isSsl();

Вернет true если SSL и false если нет.

Если url http://mysite.ru, то вернет http (https, ftp).

toString

$uri = JFactory::getURI();

$uri->toString(); // ВЕСЬ УРЛ
$uri->toString(array('path', 'query', 'fragment')); // ОТНОСИТЕЛЬНЫЙ УРЛ
$uri->toString(array('scheme','host')); // http://mydomain.ru
$uri->toString(array('scheme', 'host', 'path', 'query', 'fragment')); // АБСОЛЮТНЫЙ УРЛ

URI::toString();

Вернет полную строку URI, если не указаны дополнительные свойства.

getURI(), toString()

// Все свойства
toString( $parts = array('scheme', 'user', 'pass', 'host', 'port', 'path', 'query', 'fragment') )