Php İle Adresi Parçalara Bölme

OfisSoft

Asistan
Katılım
14 Ekim 2008
Mesajlar
135
Reaksiyon puanı
4
Puanları
0
Php'de çok fazla bilinmeyen ama faydalı fonksiyonları sizinle paylaşmaya devam ediyorum. Bir önce ki yazı da uniqid() fonksiyonunu sizlere tanıtmıştım. Bu fonksiyonları paylaşmamın sebebi, zaten var olan bir fonksiyon için fazladan kod yazılmasını engellemektir. Mesela uniqid() fonksiyonunu bilmeyen arkadaşlar rand() fonksiyonu ile çeşitli algoritmalar deneyerek hepsi birbirinden farklı değerler üretmeye çalışıyordu. Bu fonksiyonu öğrendikten sonra işlerinin daha kolaylaştığı yönünde olumlu geri dönüşler aldığım için, benzer fonksiyonlarla ilgili yazılar yazmaya devam ediyorum.

Bu yazıda ise sizlere parse_url() fonksiyonunu tanıtacağım. Bu fonksiyonu bilmeyen arkadaşlar explode() fonksiyonu ile adresi parçalara ayırarak istedikleri kısma ulaşmaya çalışıyorlar. Oysa parse_url() fonksiyonu zaten bu işlemi otomatik olarak yapıyor. :)

ÖRNEK 1 :

PHP:
// Adresi tanımladım.  
$url = 'http://www.webteders.com/blog/index.php?page=login&status=0#class1';  
// "parse_url" fonksiyonu ile dönen değeri "$data" değişkenine attım.  
$data = parse_url($url);  
// $data değerini ekrana bastım.  
print_r($data);
PHP:
Array  
(  
 [scheme] => http  
 [host] => www.webteders.com  
 [path] => /blog/index.php  
 [query] => page=login&status=0  
 [fragment] => class1  
)
$data değişkenin bir dizi haline geldiğini görebilirsiniz. parse_url() fonksiyonu adresi parçalara ayırıp dizi olarak geriye döndürüyor.

[scheme] : Protokol değerini içerir. (http, https vb.)
[host] : Ana domain değerini içerir.
[path] : Dizin değerini içerir.
[query] : Query String değerini içerir.
[fragment] : Özellikle deep link işlemlerinde kullandığımız # sonrası ifadeyi içerir.

ÖRNEK 2 :

PHP:
// Adresi tanımladım.  
$url = 'ftp://kullaniciadi:sifre@sunucu:22';  
// "parse_url" fonksiyonu ile dönen değeri "$data" değişkenine attım.  
$data = parse_url($url);  
// $data değerini ekrana bastım.  
print_r($data);
PHP:
Array  
(  
 [scheme] => ftp  
 [host] => sunucu  
 [port] => 22  
 [user] => kullaniciadi  
 [pass] => sifre  
)
Kaynak : http://www.webteders.com/blog/detay/Php-Ile-Adresi-Parcalara-Bolme/25
 

muratveb

Profesör
Katılım
23 Temmuz 2009
Mesajlar
2,197
Reaksiyon puanı
56
Puanları
228
Gerçekten faydalı bir bilgi oldu benim için. Teşekkürler
 

mgazi

Asistan
Katılım
13 Ocak 2007
Mesajlar
249
Reaksiyon puanı
5
Puanları
0
Ara sıra Php ile uğraşan biri olarak bir aralar bunun nasıl yapılabileceğini merak ediyordum. Bilgilendirme güzel olmuş. Eline sağlık.

Benim asıl merak'ım sub domain hakkında.

a.abc.com
b.abc.com

a ve b adında iki adet sub domainim bulunuyor. Bunları url'den çekmek ve bir değişkene tanımlamak mümkün mü?
 
Üst