Dobivanje URL segmenata u PHP-u je neophodna vještina za izgradnju dinamičnih i korisničkih web stranica. Ovo je posebno važno kada se radi o optimizaciji za pretraživače (SEO), jer hvatanje URL segmenata može pomoći u stvaranju smislenijih i pretraživih URL-ova. Ovo zauzvrat poboljšava vidljivost vaše web stranice i povraćaj ulaganja.
U PHP-u postoje različiti načini za dobijanje URL segmenata, a jedan efikasan metod je korišćenje _SERVER superglobal i eksplodira funkcija. Ovaj pristup nam omogućava da razdvojimo URL-ove na manje dijelove, koji se onda mogu analizirati i koristiti po potrebi.
$url = $_SERVER['REQUEST_URI'];
$segments = explode('/', $url);
SERVER Superglobal
Prvi dio rješenja uključuje razumijevanje _SERVER superglobal u PHP-u. Ovo je niz koji sadrži informacije o zaglavljima, stazama i lokacijama skripte. The 'REQUEST_URI' element unutar ovog superglobala se koristi za dobivanje trenutnog URL-a. Ispitivanje šta svaki URL segment znači i kako ih možete efikasno koristiti, može značajno poboljšati upotrebljivost i SEO vaše web stranice.
$_SERVER['REQUEST_URI'] obično pohranjuje trenutni traženi URL. Dakle, ako je naš URL http://example.com/post/123, 'REQUEST_URI' će vratiti /post/123.
Funkcija Explode
Jednako važan u dobijanju URL segmenata je i eksplodira funkcija. Ova korisna PHP funkcija dijeli string po nizu. Potrebna su dva parametra, graničnik koji će se koristiti za razdvajanje niza i sam niz.
U ovom slučaju, podijelit ćemo URL pohranjen u $_SERVER['REQUEST_URI'] kosom crtom (“/”). Ovo će kreirati niz u kojem je svaki element segment URL-a.
$url = $_SERVER['REQUEST_URI'];
$segments = explode('/', $url);
Sada će varijabla $segments sadržavati niz svih URL segmenata. Na primjer, ako je URL bio http://example.com/post/123, onda bi $segments bio niz u kojem je $segments[0] 'post', a $segments[1] je '123'.
Imajte na umu da će funkcija eksplodiranja također uključiti prazan niz prije prve kose crte, tako da ćete možda htjeti da je uklonite ili zanemarite tokom obrade.
Dodatne biblioteke i funkcije
Dok gornji kod pruža jednostavan način za dobijanje URL segmenata u PHP-u, nekoliko biblioteka i funkcija može učiniti zadatak lakšim i efikasnijim.
Na primer, parse_url funkcija u PHP-u može raščlaniti URL i vratiti njegove komponente, kao što su šema, host, putanja, string upita, itd. Nadalje, biblioteke poput PHP-Router može omogućiti složenije scenarije usmjeravanja, što olakšava izgradnju velikih web aplikacija.