English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دليل PHP الأساسي

دليل PHP المتقدم

PHP & MySQL

دليل PHP

استخدام دالة PHP sprintf() ومثال

   دليل الوظائف لـ 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

مطلوب. تحديد النص وكيفية تنسيقه المعاملات

قيم التنسيق الممكنة:

  • %% - إرجاع رمز الـ %

  • %b - عدد ثنائي

  • %c - حرف ASCII

  • %d - عدد عشري يحتوي على إشارة (+) أو (-) (سالب، 0، إيجابي)

  • %e - استخدام نظام العد العشري الصغير (مثل 1.2e+2)

  • %E - استخدام نظام العد العشري الكبير (مثل 1.2E+2)

  • 誒دد عشري بدون إشارة (+) (أكبر من أو يساوي 0)

  • %f - عدد عشري (محلي)

  • %F - عدد عشري (غير محلي)

  • %g - %e القصير و%f

  • %G - %E القصير و%f

  • %o - عدد ثنائي

  • %s - نص

  • %x - عدد عشري (أحرف صغيرة)

  • %X - عدد عشري (أحرف كبيرة)

قيم التنسيق الإضافية. يجب وضعها بين % والخط الأبجدية (مثل %.2f):

  • + (إضافة + أو - أمام الرقم لتحديد إشارة الزيادة أو النقصان. بالافتراض، يتم علامة العلامة السلبية فقط، وليس العلامة الإيجابية)

  • ' (تحديد ما سيتم استخدامه كملء، القيمة الافتراضية هي الفراغ. يجب استخدامه مع معدل العرض. على سبيل المثال: '%'x20s (استخدام 'x' كملء))

  • - (تحريك المعاملات إلى اليسار)

  • .[0-9] (تحديد عرض المعاملات)

  • .[0-9] (تحديد عدد أرقام النقاط أو أقصى طول النص)

تعليق:إذا تم استخدام العديد من القيم الم 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]

دليل الوظائف لـ PHP String النصوص