Получить базовый URL в модели - PullRequest
2 голосов
/ 13 февраля 2012

Я использую Zend Framework для разработки своего проекта.Я хочу получить базовый URL с протоколом в некоторой модели.Я пытаюсь следующие строки, чтобы сделать это.Но он вернется пустым.

$front = Zend_Controller_Front::getInstance();
$baseUrl = $front->getBaseUrl();
echo $baseUrl; 

Могу ли я получить базовый URL таким образом.Каковы лучшие решения для этого.Я могу использовать также следующую строку.

$baseUrl  = 'http://'. $_SERVER['HTTP_HOST'];
echo $baseUrl; 

Но я хочу лучшего решения.Пожалуйста, помогите мне.

1 Ответ

1 голос
/ 13 февраля 2012

Чтобы получить схему и домен, вы можете использовать это:

$request = Zend_Controller_Front::getInstance()->getRequest();
$url = $request->getScheme() . '://' . $request->getHttpHost();

Оставшуюся часть URL вы можете сгенерировать так:

$serverUrlHelper = new Zend_View_Helper_ServerUrl();
$yourUrl = $serverUrlHelper->serverUrl(
$this->getHelper('url')->url(
       array(
           'module' => 'yourmodule',
           'controller' => 'yourcontroller',
           'action' => 'youraction',
       ),
       null,   // the route 
       true));
...