как иногда переключать baseUrl при вызове помощника вида url - PullRequest
1 голос
/ 17 февраля 2011

У меня есть вопрос о лучшей практике по URL в приложении Zend.Мое приложение будет работать в двух разных контекстах (Facebook и автономно).Обычно мой baseUrl пуст.Но при запуске в Facebook (в качестве приложения холста) я устанавливаю свой baseUrl равным «apps.facebook.com/xxx» ... но есть исключения.В основном я хочу новый baseUrl, но иногда нет.В настоящее время я удаляю baseUrl, когда он мне не нужен ...

Заранее спасибо

Ответы [ 2 ]

1 голос
/ 17 февраля 2011

Вы можете изменить baseUrl, например, Ваше мнение выглядит следующим образом:

<?php 
    // save current base
    $oldBase = $this->getHelper('baseUrl')->getBaseUrl();

    // set a new one for a short time
    echo $this->getHelper('baseUrl')->setBaseUrl('new/base/')->baseUrl('link');

    // restore the original base
    $this->getHelper('baseUrl')->setBaseUrl($oldBase);
?>

Важно запомнить, чтобы сохранить и восстановить исходную базу для baseUrl. В противном случае все макеты могут не работать должным образом, поскольку помощник «запоминает» их состояние, и вы не хотите менять базу для всей системы. Надеюсь, это будет полезно.

0 голосов
/ 19 февраля 2011

Наилучшим выбором будет создание подкласса помощника вида BaseUrl и использование расширенного, когда вам нужно пользовательское значение.

...