PHP vprintf() Function












❮ مرجع رشته PHP




مثال


خروجی یک رشته فرمت شده:



$number = 9;
$str = "Beijing";
vprintf("%u میلیون دوچرخه در %s وجود دارد.",array($number,$str));
؟>

این را خودتان امتحان کنید »




تعریف و استفاده


تابع vprintf() یک رشته فرمت شده را خروجی می دهد.


برخلاف printf()، آرگومان‌های vprintf()، در یک آرایه قرار می‌گیرند. را
عناصر آرایه در درصد (%) درج خواهند شد
علائم در رشته اصلی این تابع "گام به گام" کار می کند. در اولین علامت %،
اولین عنصر آرایه درج شده است، در علامت % دوم، عنصر آرایه دوم درج شده است، و غیره.


توجه: اگر % علائم بیشتر از آرگومان ها وجود دارد، باید از آن استفاده کنید
نگهدارنده های مکان پس از علامت % یک مکان نگهدار درج می شود و از علامت تشکیل شده است
آرگومان- عدد و "$". مثال دو را ببینید.


نکته: توابع مرتبط: sprintf()،
printf()،
vsprintf()،
fprintf() و
vfprintf()





نحو



vprintf(قالب، argarray)

مقادیر پارامتر













درج شوند

پارامتر توضیح
قالب لازم است. رشته و نحوه قالب بندی متغیرهای موجود در آن را مشخص می کند.

مقادیر قالب احتمالی:



  • %% - علامت درصد را برمی‌گرداند

  • %b - عدد باینری

  • %c - نویسه مطابق با مقدار ASCII

  • %d - عدد اعشاری امضا شده (منفی، صفر یا مثبت)

  • %e - نماد علمی با استفاده از حروف کوچک (مثلاً 1.2e+2)

  • %E - نماد علمی با استفاده از حروف بزرگ (مثلاً 1.2E+2)

  • %u - عدد اعشاری بدون علامت (برابر یا بزرگتر از صفر)

  • %f - عدد ممیز شناور (تنظیمات محلی آگاه هستند)

  • %F - عدد نقطه شناور (تنظیمات محلی اطلاع ندارند)

  • %g - کوتاهتر از %e و %f

  • %G - کوتاهتر از %E و %f

  • %o - عدد اکتال

  • %s - رشته

  • %x - عدد هگزادسیمال (حروف کوچک)

  • %X - عدد هگزادسیمال (حروف بزرگ)


مقادیر قالب اضافی. اینها بین % و حرف قرار می گیرند (مثال %.2f):



  • + (هر دو + و - را جلوی اعداد اعمال می کند. به طور پیش فرض، فقط اعداد منفی علامت گذاری می شوند)

  • ' (مشخص می‌کند چه چیزی به‌عنوان بالشتک استفاده شود. پیش‌فرض فاصله است. باید همراه با تعیین‌کننده عرض استفاده شود. مثال: %'x20s (از «x» به‌عنوان پد استفاده می‌شود)

  • - (سمت چپ مقدار متغیر را توجیه می کند)

  • [0-9] (حداقل عرض نگهداشته شده از مقدار متغیر را مشخص می کند)

  • .[0-9] (تعداد ارقام اعشاری یا حداکثر طول رشته را مشخص می کند)


توجه: اگر چندین مقدار قالب اضافی استفاده می‌شود، باید به همان ترتیب بالا باشند.

argarray لازم است. آرایه ای با آرگومان هایی که باید در علامت های % در رشته قالب












جزئیات فنی











مقدار بازگشتی: طول رشته خروجی را برمی‌گرداند
نسخه PHP: 4.1.0+




نمونه های بیشتر



مثال


استفاده از مقدار قالب %f:




$num1 = 123;

$num2 = 456;

vprintf("%f%f",آرایه($num1,$num2));

?>

این را خودتان امتحان کنید »



مثال


استفاده از متغیرهایی:




$number = 123;

vprintf("با 2 اعشار: %1$.2f


بدون اعشار: %1$u",array($number));

?>

این را خودتان امتحان کنید »



مثال


استفاده از printf() برای نشان دادن تمام مقادیر قالب ممکن:



$num1 = 123456789;
$num2 = -123456789;
$char = 50; // کاراکتر ASCII 50 2 است

// توجه: مقدار قالب "%%" علامت درصد را برمی گرداند
printf("%%b = %b
",$num1) ; // عدد باینری
printf("%%c = %c
",$char); // کاراکتر ASCII
printf("%%d = %d
",$num1); // عدد اعشاری امضا شده
printf("%%d = %d
",$num2); // عدد اعشاری امضا شده
printf("%%e = %e
",$num1); // نماد علمی (کوچک)

printf("%%E = %E
",$num1); // نماد علمی (با حروف بزرگ)
printf("%%u = %u
",$num1); // عدد اعشاری بدون علامت (مثبت)
printf("%%u = %u
",$num2); // عدد اعشاری بدون علامت (منفی)
printf("%%f = %f
",$num1); // شماره ممیز شناور (تنظیمات محلی آگاه هستند)
printf("%%F = %F
",$num1); // عدد ممیز شناور (تنظیمات محلی آگاه نیست)
printf("%%g = %g
",$num1); // کوتاهتر از %e و %f
printf("%%G = %G
",$num1); // کوتاهتر از %E و %f
printf("%%o = %o
",$num1); // عدد اکتال
printf("%%s = %s
",$num1); // String
printf("%%x = %x
",$num1); // عدد هگزادسیمال (کوچک)
printf("%%X = %X
",$num1); // عدد هگزادسیمال (بزرگ)
printf("%%+d = %+d
",$num1); // مشخص کننده علامت (مثبت)

printf("%%+d = %+d
",$num2); // مشخص کننده علامت (منفی)
?>

این را خودتان امتحان کنید »



مثال


نمایش مشخص‌کننده‌های رشته:



$str1 = "سلام";
$str2 = "سلام دنیا!";

vprintf("[%s]
",array($str1) );

vprintf("[%8s]
",آرایه($str1));
vprintf("[%-8s]
",آرایه($str1));

vprintf("[%08s]
",آرایه($str1));
vprintf("[%'*8s]
",array($str1));

vprintf("[%8.8s]
",آرایه($str2));
؟>

این را خودتان امتحان کنید »



❮ مرجع رشته PHP