PHP fprintf() fonksiyonu

Örnek

Metni "test.txt" adlı metin dosyasına yazın:

<?php
$number = 9;
$str = "Beijing";
$file = fopen("test.txt","w");
echo fprintf($file,"There are 쥕lion bicycles in %s.",$number,$str);
?>

Yukarıdaki kodun çıktısı:

40

Aşağıdaki metin "test.txt" adlı dosyaya yazılacaktır:

Beijing'de 9 milyon bisiklet var.

Tanım ve Kullanım

fprintf() fonksiyonu, biçimlendirilmiş dizgeyi belirtilen çıktı akışına (örneğin: dosya veya veritabanı) yazdırır.

arg1vearg2vearg++ parametreler ana dizgeye yerleştirilir. Bu fonksiyon adım adım çalışır. İlk % işaretine kadar arg1ikinci % işaretine kadar arg2ve bu şekilde devam eder.

Açıklama:% işareti fazla ise arg Parametre varsa, yer tutucu kullanmanız gerekir. Yer tutucular % işareti arkasına yerleştirilir ve rakam ve "\$" ile oluşur. Örnek 2'ye bakın.

İlgili fonksiyonlar:

Sözdizimi

fprintf(stream,format,arg1,arg2,arg++)
Parametre Açıklama
stream Gerekli. Dizgenin nerede yazılacağını veya çıktısının alınacağını belirtir.
format

Gerekli. Dizgeyi ve içindeki değişkenlerin nasıl biçimlendirileceğini belirtir.

Muhtemel biçim değerleri:

  • %% - Bir yüzde işareti (%) döndürür
  • %b - İkili sayı
  • %c - ASCII değeri olan karakter
  • %d - İşaret içeren ondalıklı sayı (negatif, 0, pozitif)
  • %e - Küçük harflerle bilimsel sayı sistemi (örneğin 1.2e+2)
  • %E - Büyük harflerle bilimsel sayı sistemi (örneğin 1.2E+2)
  • 薉şaret içermeyen ondalıklı sayı (0 veya daha büyük)
  • %f - Yerel ayarların içindeki ondalıklı sayı
  • %F - Yerel ayarların dışındaki ondalıklı sayı
  • %g - Kısa %e ve %f
  • %G - Kısa %E ve %f
  • %o - Sekizli sayı
  • %s - Dizge
  • %x - Küçük harflerle onaltılık sayı
  • %X - Büyük harflerle onaltılık sayı

Ekstra biçim değeri. % ve harf arasında yerleştirilmelidir (örneğin %.2f):

  • + (Sayının önüne + veya - ekleyerek sayının pozitifliğini tanımlar)
    Varsayılan olarak, sadece negatif sayılar işaretlenir, pozitif sayılar işaretlenmez)
  • ' (Doldurma olarak ne kullanılacağını belirtir, varsayılan olarak boşluk. Genişlik belirteci ile birlikte kullanılmalıdır)
    Örnek: '%x20s' ("x" kullanarak doldurma yapar)
  • - (Değişken değerini sol ayarlar)
  • [0-9] (Değişken değerinin en küçük genişliğini belirtir)
  • [0-9] (Ondalık basamak sayısını veya maksimum dizgi uzunluğunu belirtir)

Açıklama:Birden fazla ek format değeri kullanılırsa, yukarıdaki sırayla kullanılmalıdır.

arg1 Gerekli. Eklenecek yeri belirtir format Dizideki birinci % işaretindeki parametre.
arg2 Opsiyonel. Eklenecek yeri belirtir format Dizideki ikinci % işaretindeki parametre.
arg++ Opsiyonel. Eklenecek yeri belirtir format Dizideki üçüncü, dördüncü vb. % işaretlerindeki parametreler.

Teknik ayrıntılar

Dönüş değeri: Yazılan dizginin uzunluğunu döndürür.
PHP sürümü: 5+

Daha fazla örnek

Örnek 1

Metni dosyaya yazın:

<?php
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"%%f",$number);
?>

Aşağıdaki metin "test.txt" dosyasına yazılacaktır:

123.000000

Örnek 2

Yer tutucular kullanarak:

<?php
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"İki ondalık basamak: %1$.2f
\nOndalık yok: %1$u,$number);
?>

Aşağıdaki metin "test.txt" dosyasına yazılacaktır:

İki ondalık basamak: 123.00
Ondalık yok: 123

Örnek 3

printf() kullanarak tüm olası format değerlerini gösterin:

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // ASCII karakter 50 2'yi temsil eder
// Açıklama: Format değeri "%%" yüzdelik işaretini döndürür
printf("%%b = %%b <br>",$num1); // İkili sayı
printf("%%c = %%c <br>",$char); // ASCII karakter
printf("%%d = %%d <br>",$num1); // İşaretli ondalık sayı
printf("%%d = %%d <br>",$num2); // İşaretli ondalık sayı
printf("%%e = %%e <br>",$num1); // Bilimsel sayı (küçük harf)
printf("%%E = %%E <br>",$num1); // Bilimsel sayı (büyük harf)
printf("%鑾u <br>",$num1); // Negatif olmayan ondalık sayı
printf("%鑾u <br>",$num2); // Negatif olmayan ondalık sayı
printf("%%f = %f <br>",$num1); // Yerel ayara göre kayan nokta sayısı
printf("%%F = %F <br>",$num1); // Yerel ayarları göz ardı eden kayan nokta sayısı
printf("%%g = %g <br>",$num1); // %e ve %f'den kısa
printf("%%G = %G <br>",$num1); // %E ve %f'den kısa
printf("%%o = %o <br>",$num1); // Sekizli sayı
printf("%%s = %s <br>",$num1); // Dizgi
printf("%%x = %x <br>",$num1); // Küçük harf olarak ondalık sayı
printf("%%X = %X <br>",$num1); // Büyük harf olarak ondalık sayı
printf("%%+d = %+d <br>",$num1); // Pozitif sembol açıklaması
printf("%%+d = %+d <br>",$num2); // Negatif sembol açıklaması
?>

Çalışma Örneği