English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
دليل الوظائف لـ PHP String النصوص
يستخدم دالة sprintf() لتحويل النصوص إلى نصوص منسقة.
string sprintf ( string $format[, mixed $args[, mixed $...]])
يستخدم لتنسيق النص، وإدخال النص الم formatة في متغير.
سيتم إدراج المعاملات arg1، arg2، و++ في مواضع الرمز (%) في النص الرئيسي. يتم تنفيذ هذه الوظيفة خطوة بخطوة. في الموضع الأول من رمز %، يتم إدراج arg1، وفي الموضع الثاني من رمز %، يتم إدراج arg2، وهكذا.
ملاحظة:إذا كان رمز % أكثر من معامل arg، فيجب استخدام ملف النص. يتم إدراج ملف النص بعد رمز %، ويكون مكونًا من رقم و"\$". انظر مثال 2.
نصيحة:الوظائف ذات الصلة:printf()،vprintf()،vsprintf()،fprintf() وvfprintf()
يسترجع النص الم formatة
الترقيم | المعاملات والشرح |
---|---|
1 | format مطلوب. تحديد النص وكيفية تنسيقه المعاملات قيم التنسيق الممكنة:
قيم التنسيق الإضافية. يجب وضعها بين % والخط الأبجدية (مثل %.2f):
تعليق:إذا تم استخدام العديد من القيم الم formatة أعلاه، يجب استخدامها وفقًا للترتيب المذكور أعلاه، ولا يجب تقليبها |
2 | arg1 مطلوب. تحديد المعاملات التي يتم إدراجها في النص الم formatة كمعامل أول |
3 | arg2 اختياري. تحديد المعاملات التي يتم إدراجها في النص الم格式ة كمعامل ثاني |
... | arg++ اختياري. تحديد المعاملات التي يتم إدراجها في النص الم格式ة في مواضع الرمز % الثالث، الرابع، الخامس وما إلى ذلك |
试试下面的实例,使用格式值 %%f 符号替换一个作为参数进行传递的变量:
<?php // 把%f 符号替换成一个作为参数进行传递的变量 $number = 123; $txt = sprintf("%f", $number); echo $txt; ?>اختبار لرؤية <‹/›
النتيجة يجب أن تكون كالتالي
123.000000
参数 format 所有可能的格式值的演示示例:
<?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>"; // شرح المقدار المميز (سالب) ?>اختبار لرؤية <‹/›
النتيجة يجب أن تكون كالتالي
%b = 111010110111100110100010101 %c = 2 %d = 123456789 %d = -123456789 %e = 1.234568e+8 %E = 1.234568E+8 钑23456789 钑8446744073586094827 %f = 123456789.000000 %F = 123456789.000000 %g = 1.23457e+8 %G = 1.23457E+8 %o = 726746425 %s = 123456789 %x = 75bcd15 %X = 75BCD15 %+d = +123456789 %+d = -123456789
مثال توضيحي لـ علامات النصوص:
<?php $str1 = "Hello"; $str2 = "Hello PHP!"; 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>"; ?>اختبار لرؤية <‹/›
نتائج الظهور:
[مرحباً] [ مرحباً] [مرحباً ] [000مرحباً] [***مرحباً] [مرحباً بـ PH]