PHP Null Coalescing bu sistemin 7 sürümünde tanıtılmış olup, koşullu olarak veri atamaya yardım etmektedir. Şayet ilk Operand bulunuyorsa ve null değilse, ilk operandı döndürmektedir. Aksi takdirde ise ikinci operand devreye girmektedir. Bu bir örnek ile şu şekilde açıklanabilir.
// İlk örnek:
echo $name = $_POST['name'] ?? 'nobody';
// Çıktı: nobody
// İkinci örnek
if (isset($_POST['name'])) {
echo $name = $_POST['name'];
} else {
echo $name = 'nobody';
}
// Çıktı: nobody
// Üçüncü örnek
echo $name = isset($_POST['name']) ? $_POST['name'] : 'nobody';
// Çıktı: nobody
PHP Null Coalescing bu örnek kullanılarak döndürüldüğü zaman İlk Örnek name adlı bir post verisi bulunmadığı için $name değişkenine nobody değeri atamış ve yazdırmıştır. İkinci ve üçüncü örnek de bu operatör ile kısaltılmış şeklidir. Bu bakımdan aynı sonucu döndürerek aynı anlamı taşımaktadır.
Null Coalescing Operator Ne İşe Yarar?
Null Coalescing operator verilmiş olan değişkenin null olup olmadığını kontrol etmektedir. Özelleştirilmiş değer çiftinden null olmayan değişkeni çevirmekte olup esas olarak nesne işlevinin varsayılan optimize edilmiş bir değer döndürmek yerine NULL değer döndürmesini önlemek için faydalanılmaktadır.
Yürütme sırasında e-bildirim çıkarmadığı için istisna ve derleyici hatasını önlemede yararlanılmaktadır. Yürütme sırası null bulunmayan sağ taraftaki işlenen dönüş değeri olacaktır.
PHP Null Coalescing Nasıl Kullanılır?
PHP Null Coalescing kullanımı faklı şekillerde yapılabilmektedir. Örneğin ad ve soyad yazdırmak isteniyorsa normal bir kod şu şekilde işlemektedir.
// Örnek
$first_name = 'Ali';
$last_name = null;
echo ($first_name ?? 'İsim Bulunmuyor') . ' ' . ($last_name ?? 'Soyisim Bulunmuyor');?>
// Çıktı: Ali Soyisim Bulunmuyor
Bu çalıştırıldığı zaman $first_name değişkeni verisi bulunması sebebiyle birinci şartta değişkeni geriye çevirmektedir. Ne var ki $last_name değişkeni null olması sebebiyle ikinci şartta ikinci operantı geriye döndürerek Soyisim Bulunmuyor cümlesini geçirmiştir.
Bunun yanı sıra PHP Null Coalescing kullanımı Chaining ile de yapılabilmektedir. Chaining Null Coalescing Operator genel anlamda şu şekilde gerçekleştirilebilmektedir.
// Örneklem
echo $name = $_GET['name'] ?? $_POST['name'] ?? 'nobody';
// Çıktı: nobody
// İkinci Örneklem
if (isset($_GET['name'])) {
echo $name = $_GET['name'];
} elseif (isset($_POST['name'])) {
echo $name = $_POST['name'];
} else {
echo $name = 'nobody';
}
// Çıktı: nobody
Null Coalescing kullanımı bu şekilde gerçekleştirildiği zaman PHP, $_get[‘name’] tanımlı ise $name değişkenine $_GET[‘name’] verisini atamakta ve yazdırmaktadır. Şayet tanımı bulunmuyorsa $_POST’name] değişkenini kontrol etmektedir.
$POST’name’] tanımlı ise atamakta ve yazdırmakta, şayet değilse ‘nobody’ verisini atayarak ekrana getirmektedir. Örnekler aynı sonucu çevirmekte ve aynı anlamı ifade etmektedir. İkinci örneklem Örneklem’in if-elseif-else şartlı ifadesi ile kodlanan uzun halidir.
Ternary Operator ile Null Coalescing Operator Arasındaki Farklar
Ternary ve null coalescing operator arasında bir takım farklar bulunmaktadır. Genel anlamda söz konusu farklar şöyledir.
- Ternary Operator değerin doğru olup olmadığını kontrol etmektedir. Lâkin null ifade değerin null olup olmadığını kontrol etmektedir.
- Üçlü operator sol ilişkisel olup null sağ ilişkisel yapıdadır.
- Üçlü operator ?: ile gösterilirken null ?? ile ifade edilmektedir.
- Ternary operatör sol işlenen boşsa e-bildirim yollamaktadır. Null ise operatöre sol işlenen bulunmuyorsa e-bildirim yayınlamamaktadır.
- Null operator karşılaştırmalı şekilde daha iyi okunabilirlik sağlamaktadır.
PHP null coalescing aynı zamanda sadece NULL geçmesine olanak tanıyan GATE gibidir. Ne var ki ?: aynı zamanda NULL dahil yanlış olan her şeyin geçmesine olanak tanıyan GATE işlevi görmektedir.
Diğer Yazılarımız
- PHP Tek Tırnak ve Çift Tırnak FarklarıPHP Tek Tırnak ve Çift Tırnak Farkları ile özellikel yeni kullanıcılar tarafından karıştırılabilen bir konudur. Her ne…
- PHP Null CoalescingPHP Null Coalescing bu sistemin 7 sürümünde tanıtılmış olup, koşullu olarak veri atamaya yardım etmektedir.
- PHP’de If-Else İfadesiPHP if else ifadesi sadece PHP’de değil, aynı zamanda pek çok programlama dilinde en önemli yapı taşlarından..
- PHP Matematiksel İşlemlerPHP matematiksel işlemler her işlem için farklılık göstermektedir. Örnek olarak Pi değerini döndüren bir koda ihtiyacınız..
- PHP For DöngüsüPHP For Döngüsü Hangi programlama dili kullanılırsa kullanılsın for döngüsü mutlaka içerisinde yerini almaktadır.
- PHP Do While DöngüsüPHP Do While döngüsü tıpkı While döngüsü gibi kod kümesini geçmek için yararlanılabilmektedir. Do-while
- PHP Array DöngüsüPHP Array Döngüsü birden çok değeri söz konusu değeri depolamak için daha fazla değişken oluşturmaya gerek kalmadan,
- PHP Yorum SatırlarıPHP yorum satırları nedir? Sorusuna yanıt olarak; PHP’de yorum satırları, kod yazarken önemli bir rol oynayan ve kodun
- Php Echo KomutuPhp Echo Komutu PHP içerisinde kullanılabilecek pek çok komut bulunmakta olup her biri ayrı bir işleve sahiptir.
- PHP Değişkenler – PHP Değişken TanımlamaPHP Değişkenler – PHP Değişken Tanımlama, Her dilin kendine özgü PHP değişken tanımlaması bulunmaktadır.
- Laravel PHP İş Bankası Sanal Pos Entegrasyonu YapımıLaravel PHP İş Bankası Sanal POS entegrasyonu yapımı hizmetimiz ile online satışlarınızı güvenli…
- Laravel PHP Akbank Sanal Pos Entegrasyonu YapımıAkbank Sanal Pos Entegrasyonu TPK Medya, yenilikçi çözümleriyle dijital dünyada öne çıkan bir yazılım firmasıdır.
- Laravel PHP QNB Finansbank Sanal Pos Entegrasyonu YapımıPHP QNB Finansbank Sanal Pos Entegrasyonu, TPK Medya, öncü bir yazılım firması olarak…
- Laravel Tur Sitesi YapımıLaravel Tur Sitesi Yapımı, TPK Medya, dijital çözümler alanında öncü bir firmadır. Web tabanlı…
- Laravel PHP Denizbank Sanal Pos Entegrasyonu YapımıLaravel PHP Denizbank Sanal Pos entegrasyonu yapımı hizmeti ile firmamız profesyonel…
- Laravel PHP Kuveyt Türk Sanal Pos Entegrasyonu YapımıE-ticaret siteniz için güvenli ödeme çözümü arıyorsanız, Kuveyt Türk Sanal Pos entegrasyonu sizin için uygundur.
- Laravel PHP Ziraat Bankası Sanal Pos Entegrasyonu YapımıE-ticaret siteniz veya online platformunuz için Laravel PHP Ziraat Bankası Sanal POS entegrasyonu..
- Laravel PHP Vakıfbank Sanal Pos Entegrasyonu YapımıBaşarılı bir e-ticaret işletmesi için güvenilir ödeme sistemleri hayati önem taşımaktadır. Vakıfbank Sanal POS..
- Laravel Kurulumu Nasıl Yapılır?Laravel Kurulumu Nasıl Yapılır? Laravel Taylor Otwell tarafından geliştirilmiş bir web uygulama geliştirme…
- Ankara E-Ticaret YazılımıAnkara E-Ticaret Yazılımı sektöründe önemli bir yere sahiptir. Şehirde çok sayıda e-ticaret firması…
- API Entegrasyonu Nedir?API entegrasyonu nedir Application Programming Interface şeklinde açılan bir kavramdır. API iki yazılım…
- Sanal POS Entegrasyonu Nasıl Yapılır?E-ticaret siteleri ya da işletmelerin internet üzerinden işlemleri sürekli artmaktadır. Sanal POS…
- PHP ile Web Sitesi YapımıPHP ile yapılan web siteleri dinamik içerik ve gelişmiş fonksiyonlar sunarak işletmelere benzersiz….
Yazımızı Değerlendirmek İster misiniz?
İçerik Puanı: 5 / 5. - Toplam Oy Sayısı: 4547
Bu gönderiye ilk oy veren siz olun.
Bu yazı sizin için yararlı olmadığı için üzgünüz!
Bu gönderiyi geliştirelim!
Bize bu yazıyı nasıl geliştirebileceğimizi söyleyin?