Kurs Önerileri:

PHP vprintf() fonksiyonu

Örnek

<?php
Formatlı dizgi çıktısı:
$number = 9;
$str = "Beijing";
?>

Çalışma Örneği

vprintf("쥕yon bisiklet %s'da var.", array($number, $str));

Tanım ve Kullanım

vprintf() fonksiyonu formatlı dizgiyi çıktı verir.

Yorum:printf() ile farklı olarak, vprintf() içindeki parametreler dizide bulunur. Dizi elemanları ana dizgedeki % işareti işaretlerine yerleştirilir. Bu fonksiyon adım adım çalışır. İlk % işaretinde ilk dizi elemanı yerleştirilir, ikinci % işaretinde ikinci dizi elemanı yerleştirilir, ve böyle devam eder. arg Parametre varsa, yer tutucu kullanmanız gerekir. Yer tutucular % işareti sonrasına yerleştirilir ve rakam ve "\$" ile oluşur. Örnek 2'ye bakın。

İpucu:İlgili fonksiyonlar:sprintf()、 printf()、 vsprintf()、 fprintf() ve vfprintf()

Sözdizimi

vprintf(format,argarray)
Parametre Açıklama
format

Gerekli. Dizgiyi ve içindeki değişkenlerin nasıl formatlanacağını belirlemek için

Olası format değerleri:

  • %% - Bir百分号 % döndürür
  • %b - İkili sayı
  • %c - ASCII değeri olan karakter
  • %d - İşaretli ondalık 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)
  • 薉şaretsiz ondalık sayı(0 veya daha büyük)
  • %f - Yerel ayarların içindeki kesirli sayı
  • %F - Yerel ayarların dışındaki kesirli sayı
  • %g - Kısa %e ve %f
  • %G - Kısa %E ve %f
  • %o - Sekizli sayı
  • %s - Dizgi
  • %x - Küçük harflerle onaltılık sayı(küçük harfler)
  • %X - Büyük harflerle onaltılık sayı(büyük harfler)

Ek format değerleri。% ve harf arasında konumlandırılmak zorundadır(örneğin %.2f):

  • + (sayı önüne + veya - ekleyerek sayının pozitif veya negatifliğini tanımlamak için。Varsayılan olarak sadece negatif sayılar işaretlenir, pozitif sayılar işaretlenmez)
  • ‘ (doldurma olarak hangi karakterin kullanılacağını belirlemek için, varsayılan olarak空格. Bu, genişlik belirleyici ile birlikte kullanılmalıdır. Örneğin:%'x20s("x" olarak doldurma kullanılır))
  • - (değişken değerini sola ayarlamak için)
  • [0-9] (belirlemek için değişken değerinin en küçük genişliği)
  • .[0-9] (ondalık basamak sayısını veya maksimum dizge uzunluğunu belirler)

Yorum:Birden fazla format değeri kullanılırsa,它们必须按照以上顺序。

argarray Gerekli. Parametreler içeren bir dizi, bu parametreler format Dizge içindeki %% işaretinin yerinde.

Teknik ayrıntılar

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

Daha fazla örnek

Örnek 1

Format değeri %%f kullanarak:

<?php
$num1 = 123;
$num2 = 456;
vprintf("%f%f",array($num1,$num2));
?>

Çalışma Örneği

Örnek 2

Yer tutucular kullanarak:

<?php
$number = 123;
vprintf("iki ondalık basamak:%1\$.2f<br>ondalık basamak yok:%1\$u",array($number));
?>

Çalışma Örneği

Örnek 3

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

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // ASCII karakter 50 2'ye denk
// Yorum: Format değeri "%%" yüzde işaretini döndürür
printf("%%b = %b <br>",$num1); // ikili sayı
printf("%%c = %c <br>",$char); // ASCII karakter
printf("%%d = %d <br>",$num1); // işaretli ondalık sayı
printf("%%d = %d <br>",$num2); // işaretli ondalık sayı
printf("%%e = %e <br>",$num1); // küçük harf ile bilimsel sayı
printf("%%E = %E <br>",$num1); // büyük harf ile bilimsel sayı
printf("%鑾u <br>",$num1); // işaretli olmayan ondalık sayı (pozitif)
printf("%鑾u <br>",$num2); // işaretli olmayan ondalık sayı (negatif)
printf("%%f = %f <br>",$num1); // yerel ayara bağlı ondalık sayı
printf("%%F = %F <br>",$num1); // yerel ayarları göz ardı eden ondalık sayı
printf("%%g = %g <br>",$num1); // kısa %e ve %f'dan
printf("%%G = %G <br>",$num1); // kısa %E ve %f'dan
printf("%%o = %o <br>",$num1); // Sekizli Sayı
printf("%%s = %s <br>",$num1); // Dizgi
printf("%%x = %x <br>",$num1); // Onaltılık Sayı (Küçük Harf)
printf("%%X = %X <br>",$num1); // Onaltılık Sayı (Büyük Harf)
printf("%%+d = %+d <br>",$num1); // İşaret İşareti (pozitif)
printf("%%+d = %+d <br>",$num2); // İşaret İşareti (negatif)
?>

Çalışma Örneği

Örnek 4

Dizgi İfadecisinin Gösterimi:

<?php
$str1 = "Hello";
$str2 = "Hello world!";
vprintf("[%s]<br>",array($str1));
vprintf("[%8s]<br>",array($str1));
vprintf("[%-8s]<br>",array($str1));
vprintf("[%08s]<br>",array($str1));
vprintf("[%'*8s]<br>",array($str1));
vprintf("[%8.8s]<br>",array($str2));
?>

Çalışma Örneği