vprintf
با «قالب بندی با vprintf» می توانی رشته قالبی را مستقیم چاپ کنی. «قالب (Format)» یعنی الگوی متن با علامت های % برای قرار دادن مقادیر.
قالب بندی با vprintf چیست؟
vprintf() رشته قالبی را روی خروجی چاپ می کند. آرگومان ها در یک «آرایه (Array)» می آیند و به ترتیب جای درصدها می نشینند.
سینتکس
vprintf(format, argarray)
مثال 1: چاپ رشته قالبی
عدد و شهر از آرایه وارد متن می شوند و روی خروجی چاپ می شوند.
<?php
$number = 9;
$str = "Beijing";
vprintf("There are %u million bicycles in %s.", array($number, $str));
?>
مثال 2: قالب اعشاری با %f
اعشارها با %f چاپ می شوند. هر عدد در آرایه ورودی است.
<?php
$num1 = 123;
$num2 = 456;
vprintf("%f%f", array($num1, $num2));
?>
مثال 3: جای نگهدار عددی %1$
با %1$ یک آرگومان را چند بار و با قالب های مختلف استفاده کن.
<?php
$number = 123;
vprintf("With 2 decimals: %1\$.2f<br>With no decimals: %1\$u", array($number));
?>
مثال 4: مشخصه های رشته ای
پهنا، تراز چپ، صفرپرکنی و برش طول با نمونه های زیر نشان داده شده اند.
<?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));
?>
یادآوری قالب ها با printf
این نمونه همه مشخصه ها را با printf() نشان می دهد. همین قواعد برای vprintf() هم کاربرد دارند.
<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50;
printf("%%b = %b <br>", $num1);
printf("%%c = %c <br>", $char);
printf("%%d = %d <br>", $num1);
printf("%%d = %d <br>", $num2);
printf("%%e = %e <br>", $num1);
printf("%%E = %E <br>", $num1);
printf("%%u = %u <br>", $num1);
printf("%%u = %u <br>", $num2);
printf("%%f = %f <br>", $num1);
printf("%%F = %F <br>", $num1);
printf("%%g = %g <br>", $num1);
printf("%%G = %G <br>", $num1);
printf("%%o = %o <br>", $num1);
printf("%%s = %s <br>", $num1);
printf("%%x = %x <br>", $num1);
printf("%%X = %X <br>", $num1);
printf("%%+d = %+d <br>", $num1);
printf("%%+d = %+d <br>", $num2);
?>
گام های عملی
- قالب را با مشخصه های % آماده کن.
- مقادیر را در آرایه بچین.
vprintf($format, $args)را صدا بزن.
پیوندهای مرتبط
- قالب بندی با vprintf برای بازخوانی سریع.
- printf برای آرگومان های جداگانه.
- vfprintf برای نوشتن در فایل.
- sprintf برای ساخت رشته قالبی.
جمع بندی سریع
- ورودی ها را در آرایه بده.
- از
%1$برای تکرار استفاده کن. %sرشته است؛%dعدد صحیح.- ترتیب مشخصه ها مهم است.