PHP’de sprintf ve printf Fonksiyonlarının Kullanımı

Python ile uğraşanların pek de yabancı olmayacakları iki PHP fonksiyonundan bahsedeceğim: sprintf ve printf.

sprintf ve printf fonksiyonları değişkenleri direkt string içinde yazmaktansa %s, %d gibi simgelerle kullanmamıza yarar. Örnek kodlara bakalım hemen…

<?php
$abc = "icerik";
echo "Yukarıdaki değişkenin değeri: $abc";
?>

Burada gördüğünüz basit bir echo yaptık. Bu işlemi sprintf ve printf kullanarak şöyle yapabilirdik:

<?php
$abc = "icerik";
printf("Yukarıdaki değişkenin değeri: %s", $abc);
?>

Bunu çalıştırdığınızda da aynı sonucu elde edeceksinizdir. Ama birinci kodda farklı olarak %s ile kullandık değişkeni.

Peki sprintf ile nasıl kullanacağız?

<?php
$abc = "icerik";
echo sprintf("Yukarıdaki değişkenin değeri: %s", $abc);
?>

Bakın yine aynı sonuç döndü. Ancak bu sefer printf’deki gibi direk kullanmadım, başına birde echo yazdım. Çünkü sprintf oluşturduğu stringi return eder. Ancak printf doğrudan çıktı verir.

Genelde sadece %s kullanılır ama bu fonksiyonlarda sadece %s yok. Daha birçok nitelik vardır. Bunlardan bazıları:
%e : Bilimsel gösterim
%d : Bir sayının, tam sayı kısmını verir
%+d : Bir sayının, tam sayı kısmının + ve – durumuna göre çıktı verir
%b : İkili düzene göre çıktı verir (1 ve 0)
%c : ASCII karakterleri yorumlar

Örnek bir kod:

<?php
$abc = 8768.989;
printf ("%%e: %e", $abc);
echo "\n";
printf ("%%d: %d", $abc);
echo "\n";
printf ("%%+d: %+d", $abc);
echo "\n";
printf ("%%b: %b", $abc);
echo "\n";
printf ("%%c: %c", "98");//98 küçük b'yi simgeler
echo "\n";
?>

Daha ayrıntılı bilgi için tıklayın.

 
97 Kudos
Don't move
  1. PHP Database’in Tamamında Arama Yapmak | Adil İlhan - pingback on 01 Eylül 2012 at 17:14
  2. Hocam peki bu printf ve sprintf fonksiyonları, web site hazırlarken hangi alanlarda işimize yarayacak..

  3. Genellikle Sprintf(); fonksiyonu ile SQL injection önüne bir noktada geçilebilir.
    Örnek Kullanim :
    $sql=sprintf(“INSERT INTO tablo (alan1, alan2, alan3) VALUES (‘%s’,’%s’,%s)”,

Yorum Yap


Not - Bunları KullanabilirsinizHTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Geri İzleme: