• 13-08-2009, 17:31:10
    #1
    Merhaba arkadaşlar,
    Ben php kodlarken 'echo' ile 'print' kullanıyorum. 'Printf' ile 'Sprintf' neredeyse kullanmıyorum. Ama sormak istediğim bazı şeyler var.

    'Printf' ile 'Sprintf' ´in diğer 'echo' ve ' print' ten ne farkı var. Ben bi fark göremedim. Yani bunlara atanan özel değerler varmı?
  • 13-08-2009, 18:08:46
    #2
    Üyeliği durduruldu
    fark olarak formatlamak için parametre verebiliyorsunuz
  • 13-08-2009, 18:17:56
    #3
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    fark olarak formatlamak için parametre verebiliyorsunuz
    Tam olarak anlamadım örnek vermeniz mümkün mü acaba?
  • 13-08-2009, 21:07:58
    #4
    THR
    Üyeliği durduruldu
    http://tr.php.net/printf

    php manuel de istemediğiniz kadar örnek mevcut alttaki yorumlara bakabilirsiniz
  • 13-08-2009, 21:15:50
    #5
    php.net'e bakmıştım zaten ama asıl istediğim bilgiyi alamadım. php.net sitesinde bunun üzerine kısa değinildi. Ben temel farkları istiyorum.
  • 13-08-2009, 22:10:35
    #6
    php.net ten anladığım kadarı ile
    print ve echo herhangi bir string çıktısı veriyor.
    'Printf' ile 'Sprintf' ise biçimlendirilmiş bir dizi çıktısı veriyor. temel fark bu...
    ayrıca formatlamak gerekiyor özel parametreler ile.
    yanlışım varsa arkadaşlar düzeltsin.
  • 13-08-2009, 22:23:45
    #7
    Ben hala anlamadım. Bir örnekle açıklarsanız çok makbule geçer
  • 13-08-2009, 22:39:28
    #8
    norelpy adlı üyeden alıntı: mesajı görüntüle
    Ben hala anlamadım. Bir örnekle açıklarsanız çok makbule geçer
    Şu örnek anlatıyor bir sürü örnek var zaten php.net te
    $s = 'monkey';
    $t = 'many monkeys';
    printf("[%s]\n",      $s); // standart dizge
    printf("[%10s]\n",    $s); // boşluklarla sağa hizalanır
    printf("[%-10s]\n",   $s); // boşluklarla sola hizalanır
    printf("[%010s]\n",   $s); // 0'larla doldurma dizgelerde de çalışır
    printf("[%'#10s]\n",  $s); // '#' özel dolgu karakteri olarak kullanılır
    printf("[%10.10s]\n", $t); // 10 karakterlik sınırlamayla sola hizalama
    Bu kodun çıktısı:
    [monkey]
    [ monkey]
    [monkey ]
    [0000monkey]
    [####monkey]
    [many monke]
    Yani mesela 0000001 dan 0999999 saydıracaksın. Ama sıfırlar kalsın istiyorsun.
    $i = 0;
    while($i < 999999){
    printf("[%010s]\n",  $i)
    $i++
    }
    çıktı
    0000001
    0000002
    0000003
    0000004
    ...........
    ...........
    ..........
    0999991
    0999992
    0999993
    0999994
    0999995
    0999996
    diye gider.
  • 13-08-2009, 22:42:27
    #9
    Üyeliği durduruldu
    anlasan ne olucak.herkes echo kullandığına göre bişeyler vardır dimi