فنکشن sprintf() PHP

مثال

بائن میچ (%%) نمبر کو یک متغیر کو میچو آپریس کریو:

<?php
$number = 2;
$str = "Shanghai";
$txt = sprintf("There are 쥕lion cars in %s.", $number, $str);
echo $txt;
?>

نمونه اجرایی

تعریف اور استعمال

sprintf() فانکشن فرمیٹ کی دفعات کو متغیر میں لکھتا ہے۔

آرگ1،آرگ2،++ پارامتر، وہ پرنامبر میں فیصد آئیکن کی جگہ داخل کیا جائے گا۔ یہ فانکشن مرحلہ وار کا کام کرتا ہے۔ پہلی % آئیکن کی جگہ، آرگ1، دوسری % آئیکن کی جگہ، آرگ2، اگلا، اگلا،

توضیح:اگر % آئیکن سے زیادہ آرگ اگر پارامتر، تو آپ کو وارضی استعمال کرنا چاہئیے۔ وارضی % آئیکن کے بعد، شمار و '$' سے ملایا جاتا ہے۔ دیکھو مثال 2۔

آئیکن:متعلقہ فانکشن: printf()، vprintf()، vsprintf()، fprintf() اور vfprintf()

قواعد

sprintf(فارمیٹ,آرگ1,آرگ2,آرگ ++)
پارامتر وصف
فارمیٹ

ضروری۔ یہ کیا کرسکتا ہے، یعنی فانکشن کی دفعات اور ان میں متغیروں کا فارمیٹ بنا رہا ہے。

ممکنہ فارمیٹ کی قیمتیں:

  • %% - ایک فیصد ناقص % واپس دینا
  • %b - بائنری نمبر
  • %c - ASCII نمبر کا حرف
  • %d - مثبت یا منفی نمبر (منفی نمبر، 0، مثبت نمبر)
  • %e - چھوٹی حروف میں سائنسی نمبر استعمال کیا جاتا ہے (مثال: 1.2e+2)
  • %E - بڑی حروف میں سائنسی نمبر استعمال کیا جاتا ہے (مثال: 1.2E+2)
  • 語ثبت نمبر (بھیج سکتا ہے، کچھ نہیں سکتا)
  • %f - فلوٹنگ پوائنٹ نمبر (مقامی سیٹ اپ)
  • %F - فلوٹنگ پوائنٹ نمبر (غیر مقامی سیٹ اپ)
  • %g - کمترین %e اور %f
  • %G - کمترین %E اور %f
  • %o - ساتویں اعداد
  • %s - فانکشن
  • %x - سادسویں اعداد (چھوٹی حروف)
  • %X - سادسویں اعداد (بڑی حروف)

اضافی فارمیٹ کی قیمتیں، ضروری ہیں، وہ % اور حروف کے درمیان رکھی جانی چاہئیں (مثال: %.2f):

  • + (اعداد کا مثبت یا منفی نشان دینا، مثبت اعداد کو نشان نہیں دیتا، منفی اعداد کو نشان دیتا ہے)
  • ' (چوڑائی کی جانب سے فیل کا استعمال، دفعہ کیا جاتا ہے، جو بائی میں چوڑائی کا پیمانہ دیتی ہے۔ مثال: '%'x20s ("x" کا استعمال کیا جاتا ہے))
  • - (متغیر کی چوڑائی کو بائی میں کھلایا)
  • [0-9] (متغیر کی کمترین چوڑائی)
  • .[0-9] (دفعات کی اکائی یا زیادہ سے زیادہ لفظ کی لمبائی)

توضیح:اگر متعدد فارمیٹ کی قیمتیں استعمال کی جائیں تو وہ ترتیب میں استعمال کی جانی چاہئیں۔

آرگ1 ضروری۔ یہ کیا کرسکتا ہے، فارمیٹ فارمیٹ کی پہلی % آئیکن کی جگہ کا پارامتر。
آرگ2 اختیاری۔ یہ کیا کرسکتا ہے، فارمیٹ فارمیٹ کی دوسری % آئیکن کی جگہ کا پارامتر。
آرگ ++ اختیاری۔ یہ کیا کرسکتا ہے، فارمیٹ فارمیٹ کے تیسرے اور چوتارویں % آئیکن کی جگہ کے اعداد کا پارامتر。

جزئیات فنی

مقدار بازگشتی: به بازگشت یک رشته فرمت شده.
نسخه PHP: 4+

مثال‌های بیشتر

مثال 1

استفاده از ارزش فرمت %%f:

<?php
$number = 123;
$txt = sprintf("%f",$number);
echo $txt;
?>

نمونه اجرایی

مثال 2

استفاده از جایگزین:

<?php
$number = 123;
$txt = sprintf("با دو اعشار:%1\$.2f
<br>بدون اعشار:%1\$u",$number);
echo $txt;
?>

نمونه اجرایی

مثال 3

مثال‌های نمایش تمامی ارزش‌های ممکن فرمت‌ها:

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // کاراکتر ASCII 50 است 2
// نظریه: ارزش فرمت "%%" بازگشت نشانه درصد می‌دهد
echo sprintf("%%b = %b",$num1)."<br>"; // عدد دو بیتی
echo sprintf("%%c = %c",$char)."<br>"; // کاراکتر ASCII
echo sprintf("%%d = %d",$num1)."<br>"; // عدد دهی با علامت
echo sprintf("%%d = %d",$num2)."<br>"; // عدد دهی با علامت
echo sprintf("%%e = %e",$num1)."<br>"; // عدد علمی (کوچک)
echo sprintf("%%E = %E",$num1)."<br>"; // عدد علمی (بزرگ)
echo sprintf("%鑾u",$num1)."<br>"; // عدد دهی بدون علامت (مثبت)
echo sprintf("%鑾u",$num2)."<br>"; // عدد دهی بدون علامت (منفی)
echo sprintf("%%f = %f",$num1)."<br>"; // عدد اعشاری (با توجه به تنظیمات محلی)
echo sprintf("%%F = %F",$num1)."<br>"; // عدد اعشاری (بدون توجه به تنظیمات محلی)
echo sprintf("%%g = %g",$num1)."<br>"; // کوتاهتر از %%e و %%f
echo sprintf("%%G = %G",$num1)."<br>"; // کوتاهتر از %%E و %%f
echo sprintf("%%o = %o",$num1)."<br>"; // اکثروقی عدد
echo sprintf("%%s = %s",$num1)."<br>"; // رشته‌ها
echo sprintf("%%x = %x",$num1)."<br>"; // شماره‌های هشدهی (کوچک)
echo sprintf("%%X = %X",$num1)."<br>"; // شماره‌های هشدهی (بزرگ)
echo sprintf("%%+d = %+d",$num1)."<br>"; // توضیحات کاراکترهای معلامت (مثبت)
echo sprintf("%%+d = %+d",$num2)."<br>"; // توضیحات کاراکترهای معلامت (منفی)
?>

نمونه اجرایی

مثال 4

نمایش توضیحات برای کاراکترهای رشته‌ای:

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

نمونه اجرایی