2012-09-19 9 views

risposta

18

Dalla documentazione:.

baseurl:

Restituisce l'URL relativo per l'applicazione. Questo è simile a scriptUrl eccetto per il fatto che non ha il nome del file di script e le barre finali vengono eliminate.

Mentre, homeUrl è

l'URL homepage

Prova echeggiando da qualche parte l'applicazione di esaminare ciascuna da soli:

echo Yii::app()->getBaseUrl(true);// true tells to get a relative url, false the other way 
echo Yii::app()->getHomeUrl(); 

Come utilizzare ogni?

baseUrl è come @bcmcfc detto può essere utile come base per tutti i collegamenti nelle applicazioni.

Ora immaginate che si voleva creare un collegamento a un'immagine in web_root/myapp/img/ se per esempio avete fatto che l'utilizzo di percorso assoluto per esempio <img src="C:/wwww/myapp/img/somepic.jpg> Diciamo che avete finito tutto il vostro sviluppo e ora si desidera distribuire ad un server linux !!

Si può vedere che tutti i link saranno rotti :(ma se invece avete fatto: <img src= <?php Yii::app()->baseUrl() ?> . "/img/somepic.jpg" tutto dovrebbe funzionare bene :)

homeUrl è semplicemente la pagina di destinazione per la vostra applicazione. Beh, non l'ho usato prima, ma immagino che puoi impostare diversi homeurl in base al ruolo utente dopo il login, ad esempio !!

1

Uno è l'URL di base per i collegamenti nella tua app. L'altro è l'URL della casa. L'URL di casa sarebbe basato sulla URL di base e sarebbe un particolare percorso o una pagina, ad esempio, che viene reindirizzato a dopo l'accesso

28
Yii::app()->getBaseUrl(true); // => http://localhost/yii_projects 
Yii::app()->getHomeUrl();  // => /yii_projects/index.php 
Yii::app()->getBaseUrl(false); // => /yii_projects 

Questa è la migliore pratica nell'indicare directory di immagini, ecc o il file stesso, piuttosto che hardcoding il percorso che può cambiare il nome"

+1

+1 per concisione. –

Problemi correlati