Navigate / search

split() ile Metni Özel Bir Karakterle Diziye Bölmek

Dizilere bölmek,Diziye Bölmek,Split komutunun kullanımı…..

Bir değişken içindeki bazı metinleri sayıları birbirinden bağımsız hale getirmemiz gerekir.Birbirinden bağımsız derken her birini farklı bir değişkene atmak yada bir dizi içinde ayırmak olabilir.Şimdi bir örnek yapalım.Bir değişken içerisinde 5 6 farklı kişnin adının kaydedildiğini varsayalım.Bunlarında virgül ile ayrıldığını düşünürsek şu şekilde isimleri bir diziye aktarabiliriz.

1
2
$isimler="ali,ahmet,veli,murat,hasan";
$isimler_dizi=split("[,]",$isimler);

Bu şekilde her kişi adını bir dizi içine atmış olduk.Şimdi bunları foreach ile yazdıralım.

1
2
3
4
5
$isimler="ali,ahmet,veli,murat,hasan";
$isimler_dizi=split("[,]",$isimler);
foreach ($isimler_dizi as $isim){
      echo $isim."<br>";
}

Örneği çalıştırdıysanız her bir ismin farklı farklı tutulduğunu göreceksiniz.
Şimdi biraz daha detaylı bir örnek yapalım.Bu sefer split() fonksiyonunun farklı bir kullanımını göreceğiz.Fonksiyonu kullanırken bir ayraç kullanmıştık.O ayracı her gördüğünde metni dizilere ayırıyordu.İşte o ayraç sayısını istediğimiz şekilde arttırabiliriz.Örneğin hem virgül hem nokta hemde soru işaret olan kısımları ayır diyebiliriz.

Örneğin web sitesinde kullanıcının doldurup bize gönderdiği bir form var.bu formada tarihi gün ay yıl olarak girecektir.Kimi kullanıcı gün ay yıl ı yazarken aralara “.” kimi kullanıcı ” /” kimi kullanıcı ise ” – ” koyabilir.Explode fonksiyonunda böyle bir istisnai durumu çözmemize imkan yoktur.Yine örneğimizden yola çıkarak biz bu tarihleri 3 farklı karakter kullanılarakta yapsak sorun çıkmadan nasıl yaparız.
Komutu şu şekilde kullanmamız gerekicek: split(“[/-.]“,$tarih)

1
2
$tarih="24/02/1987";
$detayli_tarih=split("[/-.]",$tarih);

Array_merge ile Dizileri Birleştirme

Elimizde birden fazla dizi var ve bu dizileri biz tek dizi içine toplamak isteyebiliriz.Bunun için array_merge fonksiyonunu kullanacağız.Fonksiyonu kullanırken unutmamamız gereken fonksiyonda dizi değişkenlerini hangi sırada yazdıysak bütün dizileri birleştirdiğimiz dizi değişkeninde de o sırayla depolanacaktır.
Aşağıda oluşturduğumuz 3 tane dizi değişkenini array_merge fonksiyonu ile tek bir dizi değişkenine atacağız.Ve yazdıracağız.
ARRAY_MERGE KULLANIMI

1
2
3
4
5
6
7
8
$dizi1=array("ali","ahmet","ayşegül");
$dizi2=array("banu","berk","burak");
$dizi3=array("canan","cemal","cenk");
 
$dizi=array_merge($dizi1,$dizi2,$dizi3);
foreach ($dizi as $isim){
	echo "$isim <br>";
	}

intval() doubleval() Fonksiyonu

Fonksiyonlarımız kullandığımız değişkenlerinin türünü değiştirmeye yarar.Yani değişkenin türünü başka bir değişken türüne çevirebiliriz.

Örneğimize geçelim

1
2
3
$a = "123ABC";
$b = intval($a, 16)
print ($b);

Kodlar sonrası ekrana çıkartacak sonuç “1194666″ olacaktır.$a değişkenindeki sayısayal değeri alıp 123′ün hexadecimal sayısal değeri olan “1194666″ sayıyı sonuç alacaktır

empty() Fonksiyonu

Bir önceki yazıda ele aldığımız isset() fonksiyonuyla benzer bir yapıya sahiptir.isset değişkenin tanımlanıp tanımlanmadığını sorgulayıp bize True/False cevaplarını gönderirken empty() fonksiyonu ise değişkenin içeriğinin dolu olup olmadığını sorgulayarak bize cevap gönderir.Değişkene herhangi bir değer verilmişse bize döndüreceği cevap False eğer değişkene henüz bir değer verilmemiş yada içeriği boş ise True cevabını döndürür.

1
2
3
4
$degiskenimiz=""; //Değişkenimizin içeriğini boş bıraktık
echo empty($degiskenimiz);
$degiskenimiz="155"; //Değişkenimize bir değer verdik
echo empty($degiskenimiz);

bu kodların bize döndüreceği cevabı zihninizde az çok tahmin edebiliyorsunuz umarım.

True
False

İlk önce değişkenimize boş bir değer atadık.empty fonksiyonumuzu kullandığımızda bize True yanıtını verdi.Daha sonra değişkenimize bir değer verdik ve tekrar empty fonksiyonumuzu kullandık.Bu sefer değişkenimizde bir değer olduğunu gördüğü için False yanıtını döndürdü.

isset() ve unset() Fonksiyonları

Php de bir değişken tanımlayabiliriz ve bu değişkene hemen bir değer vermemize gerek yoktur.Ana tanımladığımız değişken veri türüne göre bellekte yer kaplar ve değişkenlerin kaldırılması gerekebilir.Şimdi ele alacağımız fonksiyonlar bir değişkenin var olmadığını sorgulamak ve değişkeni bellekten kaldırmakta kullanılır.

isset() Fonksiyonu
Bu fonksiyon değişkenin var olup olmadığını sorgular ve cevap olarak True/False yanıtını gönderir.Değişken tanımlanmış ise göndereceği cevap True değişken tanımlanmamış ise döndüreceği cevap False olur.

1
echo "isset($degiskenimiz)";

Değişkenimiz henüz tanımlanmadığı için dönecek cevap False olacaktır

False

Isset fonksiyonumuzun hemen bir üst satırında bir değişken tanımlayıp tekrar fonksiyonumuzu kullanalım

1
2
$degiskenimiz="icerik";
echo "isset($degiskenimiz)";
True

Php nin döndüreceği cevap True olacaktır çünkü bir değişken tanımladık.

Unset() Fonksiyonu
Bu fonksiyonumuzda tanımlanmış bir değişkeni silmeye yarar.Bu fonksiyonu kullandığımız satırdan sonra değişkenimizi programımızın geri kalanında kullanamayız.Dilerseniz değişkenimizin silinip silinmediğini isset() fonksiyonuyla tekrar sorgulayabilirsiniz.
Not:unset() değişkenimizin içeriğini değil değişken ismiyle birlikte programdan tamamen kaldırır

1
2
3
$degiskenimiz="icerik";
unset($degiskenimiz)";
echo "$degiskenimiz";

kodlarımızı bu şekilde yazdıktan sonra ekrana cevap olacak hiç birşey döndürmeyecektir Php.Çünkü unset() fonksiyonuyla değişkenimizi sildik.Eğer unset() kullandığımız satırı silersek cevap olarak “icerik” kelimesi dönecektir.