انتقل إلى محتوى الدرس

Formatting with sprintf and number_format تنسيق العملات والقوالب النصية بـ number_format و sprintf

استبدل وقسّم ونسّق السلاسل النصية في PHP 8 باستخدام str_replace وsubstr_replace وexplode وimplode وstr_pad وnumber_format.
1 صفوف تعليمية
PHP
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

اجمع بين number_format() لعرض فواصل الآلاف المقروءة بشرياً، وبين sprintf() لبناء القوالب النصية الدقيقة المحشوة بالأصفار أو المحددة الخانات العشرية.

  • تُنتج sprintf("%06d", 42) النص "000042" كبديل مختصر لدالة str_pad() مع الأعداد الصحيحة.
  • تنسق sprintf("%.2f%%", 14.5) النسبة المئوية بخانتين عشريتين، ويُستخدم الرمز المزدوج %% لطباعة علامة % حرفياً.
  • تنسق number_format($amount, 2, ".", ",") المبالغ المالية بخانتين عشريتين وفواصل آلاف.

يحشو الرمز %05d الرقم 93 ليصبح 00093، ويطبع %.1f%% النسبة 15.0%، ويدرج %s المبلغ المنسق.

الدالةالوظيفة الأساسيةالسلوك / الخيار الأهممثال المخرجات
str_replace($a, $b, $s, $cnt)Replace all matchesSets $cnt to replacement count"a-b-c"
substr_replace($s, $r, $pos, 0)Positional edit / insert$length = 0 inserts without deleting"PHP8.4"
str_pad($s, $len, "0", STR_PAD_LEFT)Fixed-width paddingNever truncates if $s is already longer"00042"
nl2br($s, false)Newlines to HTML breaksfalse outputs HTML5 <br>"Line1<br>\nLine2"
sprintf("%.2f%%", $rate)Typed template stringUse %% for literal percent sign"15.00%"
PHP
<?php
$subtotal = 4850.75;
$taxRate = 15.0;
$invoiceNo = 93;

$formattedSub = number_format($subtotal, 2, ".", ",");
$line = sprintf("INV-%05d | Tax: %.1f%% | Net: $%s", $invoiceNo, $taxRate, $formattedSub);

echo $line . "\n";
خلاصة المعرفة ومحطة الانتقال

ملخص الدرس

حصاد الدرس

مراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي

ماذا تعلّمت في هذا الدرس؟

اجمع بين number_format() لعرض فواصل الآلاف المقروءة بشرياً، وبين sprintf() لبناء القوالب النصية الدقيقة المحشوة بالأصفار أو المحددة الخانات العشرية. تُنتج sprintf("%06d", 42) النص "000042" كبديل مختصر لدالة str_pad() مع الأعداد الصحيحة. تنسق sprintf("%.2f%%", 14.5) النسبة المئوية بخانتين عشريتين، ويُستخدم الرمز المزدوج %% لطباعة علامة % حرفياً. تنسق number_format($amount, 2, ".", ",") المبالغ المالية بخانتين عشريتين وفواصل آلاف.