Url ajutor - ajutor - un ghid complet pentru a Yii 2

ajutor Url oferă un set de metode statice de gestionare a adreselor URL.

Noțiuni de bază URL comun

Puteți utiliza două metode de obținere a URL generală: URL acasă (Acasă) și cererea curentă URL-ul de bază (Base). Utilizați următorul cod pentru a obține URL-ul de start:

Dacă nu treci parametri, veți obține adresa URL relativă. Puteți trece adevărat. pentru a obține o adresă URL absolută pentru protocolul curent sau specificați explicit protocolul (https. http).

Pentru a obține adresa URL de bază a cererii curente:

Singurul parametru al acestei metode, de asemenea, funcționează ca Url :: acasă ().

Crearea unei adrese URL

Pentru a crea o adresă URL pentru Route metoda Url :: toRoute () utilizarea adecvată. Metoda foloseste Yii \ web \ UrlManager. Pentru a crea o adresă URL:

Puteți seta linia de traseu vor fi, de exemplu, site-ul / index. Și, de asemenea, puteți utiliza o matrice, dacă doriți să specificați parametri suplimentari pentru adresa URL de interogare. Formatul matrice este după cum urmează:

Dacă doriți să creați o adresă URL cu ancora, puteți utiliza o serie de parametri cu tasta #. De exemplu:

Traseul poate fi absolută sau relativă. URL-ul absolut începe cu o bară oblică (de exemplu, / site / index), relativă - nu (de exemplu, site-ul / index sau index). O adresă URL relativă va fi transformată într-o absolută de următoarele reguli:

  • Dacă Roth șir gol, se va utiliza valoarea curentă Yii \ web \ controler :: traseu;
  • Dacă Roth nu conține slash-uri (de exemplu, indicele), acesta va fi considerat acest controler de joc de acțiune, și va fi determinată folosind Yii \ web \ Controlor :: UNIQUEID;
  • Dacă Roth nu începe cu o bară oblică (de exemplu, site-ul / index), acesta va fi considerat rout relativă a modulului curent, și va fi determinată folosind Yii \ de bază \ Modul :: UNIQUEID.

Începând cu versiunea 2.0.2, puteți specifica rutate folosind pseudonime. În acest caz, primul alias-ul va fi convertit la ruta respectivă va fi transformată într-o absolută, în conformitate cu regulile de mai sus.

Exemple folosind metoda:

O alta metoda Url :: la () este foarte similar cu toRoute (). Singura diferență este parametrul de intrare ar trebui să fie o matrice. Dacă treci un șir de caractere, acesta va fi perceput ca un URL.

Primul argument poate fi:

  • array: toRoute () este numit. pentru a genera o adresă URL. De exemplu: [ 'site / index']. [ 'Post / index' 'page' => 2]. În secțiunea toRoute () este descrisă în detaliu modul de setare rout;
  • O linie care începe cu @. Acesta va fi tratat ca un alias. Valoarea alias corespunzătoare este returnat;
  • șir gol: returnează adresa URL curentă;
  • Ca de obicei linie: returnează șirul de neschimbat

În cazul în care metoda de al doilea parametru setat la schema $ (string sau true), URL-ul va fi generat cu protocolul (derivat din Yii \ web \ UrlManager :: hostInfo). În cazul în care $ URL-ul specificat de protocol, atunci valoarea sa va fi înlocuit.

Începând cu versiunea 2.0.3, puteți folosi Yii \ ajutoare \ Url :: curent (). pentru a crea o adresă URL bazată pe ruta solicitată curent și GET-parametri. Puteți modifica, șterge sau adăuga noi get-parametrii transmiși în parametrul metoda $ params. De exemplu:

amintindu URL

Există probleme atunci când aveți nevoie să vă amintiți URL-ul, și apoi să-l utilizați într-una sau mai multe interogări succesive. Acest lucru se poate realiza după cum urmează:

În următoarea interogare, putem obține o adresă URL salvată, după cum urmează:

Verificați adresa URL relativă

Pentru a verifica dacă este sau nu o adresă URL relativă (de exemplu, în cazul în care acesta nu conține informații cu privire la gazdă), puteți folosi următorul cod: