fbpx

PHP Null Coalescing nedir? Ne için ve nasıl kullanılır? Bu dersimizde bunları öğreneceğiz. 

PHP Null Coalescing operatörü PHP 7 sürümünde tanıtılmıştır. PHP Null Coalescing operatörü koşullu olarak veri atamayı sağlar. Eğer ilk operand varsa ve null değilse ilk operandı döndürür, aksi taktirde ikinci operandı döndürür. 

PHP Null Coalescing Örnekleri

				
					// Örnek 1: 
echo $name = $_POST['name'] ?? 'nobody';
// Çıktı: nobody

// Örnek 1.1
if (isset($_POST['name'])) {
    echo $name = $_POST['name'];
} else {
    echo $name = 'nobody';
}
// Çıktı: nobody

// Örnek 1.2
echo $name = isset($_POST['name']) ? $_POST['name'] : 'nobody';
// Çıktı: nobody
				
			

Örnek 1’de name adlı bir post verisi olmadığı için $name değişkenine nobody değeri atandı ve yazdırıldı. Örnek 1, Örnek 1.1 ve 1.2’nin PHP Null Coalescing operatör ile kısaltılmış halidir. İkisi de aynı sonucu döndürür ve aynı anlamı taşır.

				
					// Örnek 2
$first_name = 'Onur';
$last_name = null;
echo ($first_name ?? 'Ad Yok') . ' ' . ($last_name ?? 'Soyad Yok');?> 
// Çıktı: Onur Soyad Yok
				
			

Örnek 2’de $first_name değişkeni verisi olduğu için ilk koşulda değişkeni geriye döndürdü. Ancak $last_name değişkeni null olduğu için ikinci koşulda ikinci operandı geriye döndürdü ve ‘Soyad Yok’ cümlesini yazdırdı.

PHP Null Coalescing Operatör Zincirleme (Chaining Null Coalescing Operator)

PHP Null Coalescing öperatörü zincirleyerek kullanabiliriz. 

				
					// Örnek 3
echo $name = $_GET['name'] ?? $_POST['name'] ?? 'nobody';
// Çıktı: nobody

// Örnek 3.1
if (isset($_GET['name'])) {
    echo $name = $_GET['name'];
} elseif (isset($_POST['name'])) {
    echo $name = $_POST['name'];
} else {
    echo $name = 'nobody';
}
// Çıktı: nobody				
			

Örnek 3’te PHP, $_GET[‘name’] tanımlıysa $name değişkenine $_GET[‘name’] verisini atar ve yazdırır. Eğer tanımlı değilse $_POST’name’] değişkenini kontrol et, $_POST’name’] tanımlıysa atar ve yazdırır, değilse ‘nobody’ verisini atar ve yazdırır. Örnek 3.1, Örnek 3 ile aynı sonucu döndürür ve aynı anlamı taşır. Örnek 3.1, Örnek 3’ün if-elseif-else koşullu ifadesiyle kodlanmış uzun halidir. Örnek 3 ise PHP Null Coalescing ile kodlanmış kısa halidir.

Bu İçeriği Oylayın:
Toplam Oy Sayısı: 1 Ortalama Puan: 5
Onur Özden

Yazar

Onur Özden

Bir Yorum Bırakın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

X

Hemen Teklif Alın

profesyonel
çözümler

Kurumsal Yazılım Firması mı Arıyorsunuz?
Bilgi almak ve ihtiyaçlarınızı karşılayan kaliteli çözümlerimizle tanışmak için formu doldurmanız yeterli.

Yanıtla
Whatsapp
Merhaba!
Bizimle iletişime geçmek için bu mesajı yanıtlayın.