الفرق بين المراجعتين لصفحة: «PHP/number format»

من موسوعة حسوب
< PHP
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة number_format()‎ في PHP}}</noinclude>'
 
لا ملخص تعديل
 
(3 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:الدالة number_format()‎ في PHP}}</noinclude>
<noinclude>{{DISPLAYTITLE:الدالة <code>number_format()‎</code> في PHP}}</noinclude>
(PHP 4, PHP 5, PHP 7)
 
تُنَسِق الدالة <code>number_format()‎</code> الأعداد بالآلاف لعرضها.
 
== الوصف ==
<syntaxhighlight lang="php">
string number_format ( float $number [, int $decimals = 0 ] )
 
string number_format ( float $number , int $decimals = 0 , string $dec_point = "." , string $thousands_sep = "," )
 
 
</syntaxhighlight>تقبل الدالة <code>number_format()‎</code> معاملًا واحدًا أو معاملين اثنين أو أربعة معاملات (لا تقبل الدالة <code>number_format()‎</code> ثلاثة معاملات).
* إذا مُرِّرَ إلى الدالة <code>number_format()‎</code> معاملٌ واحد، فتُنَسِق الأعداد دون كسرها العُشري مع إضافة فاصلة (<code>,</code>) لكل مجموعة آلاف (أي فاصلة بين كل ثلاثة ارقام).
* إذا مُرِّر إلى الدالة <code>number_format()‎</code> معاملين اثنين، فتُنَسِق الأعداد مع الحفاظ على كسرها العُشري بإضافة نقطة (<code>.</code>) قبله، وستُضيف فاصلة (<code>,</code>) لكل  مجموعة آلاف (أي فاصلة بين كل ثلاثة ارقام).
* إذا مُرِّرَ إلى الدالة <code>number_format()‎</code> أربعة معاملات، فتُنَسِق الأعداد بعدد المعامل <code>decimals</code> من الكسور العُشرية مع إضافة المعامل <code>dec_point</code> (بدلًا من <code>.</code>) كفاصلٍ قبله. وستُضيف المعامل <code>thousands_sep</code> كفاصل لكل مجموعة آلاف (أي بدل الفاصلة <code>,</code>).
 
== المعاملات ==
 
=== <code>number</code> ===
الرقم المُراد تنسيقه.
 
=== <code>decimals</code> ===
يُحدد عدد االكسور العُشرية.
 
=== <code>dec_point</code> ===
يُحدد فاصل الكسور العشرية.
 
=== <code>thousands_sep</code> ===
يُحدد فاصل مجموعة الآلاف.
 
== القيم المعادة ==
تُعيد الدالة <code>number_format()‎</code> نسخة منسقة من المعامل <code>number</code>.
 
== سجل التغييرات ==
{| class="wikitable"
!الإصدار
!الوصف
|-
|7.2.0
|عُدِلت الدالة <code>number_format()‎</code> حتى لا تُعيد القيمة <code>0-</code>، قبل هذا كانت الدالة تُعيد القيمة <code>0-</code> لأعداد مثل <code>0.01-</code>.
|-
|5.4.0
|دعمت الدالة <code>number_format()‎</code> قيم المعاملات <code>dec_point</code> و <code>thousands_sep</code> المكونة من عدة بايتات. النسخ السابقة كانت تأخذ البايت الأول في الحسبان فقط لقيم المعاملات.
|}
 
== أمثلة ==
المثال 1: مثال بسيط عن الدالة <code>number_format()‎</code>
 
على سبيل المثال، يستعمل التنسيق الفرنسي رقمين للكسور العشرية و فاصلة (<code>,</code>) لفصل الكسر العشري عن العدد وفراغ (' ') لفصل مجموعة الآلاف. المثال التالي يُبين طرق عديدة لتنسيق الأعداد.<syntaxhighlight lang="php">
<?php
$number = 1234.56;
 
// التنسيق الإنكليزي (الافتراضي)
$english_format_number = number_format($number);
// 1,235
 
// التنسيق الفرنسي
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56
 
$number = 1234.5678;
// التنسيق الإنكليزي دون فاصلٍ للآلاف
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
?>
</syntaxhighlight>
 
== انظر أيضًا ==
* <code>[[PHP/sprintf|sprintf()‎]]</code>: إعادة سلسلة نصية منسقة.
* <code>[[PHP/money format|money_format()‎]]</code> : تَنسيق رقم للعرض كالعملات.
* <code>[[PHP/sscanf|sscanf()‎]]</code>: إدخال بيانات إلى النظام من سلسلة نصية حسب تنسيق معين.
* <code>[[PHP/printf|printf()‎]]</code>: عرض سلسلة نصية منسقة.
 
== مصادر ==
* [http://php.net/manual/en/function.number-format.php صفحة الدالة number_format في توثيق PHP الرسمي].
[[تصنيف:PHP]]
[[تصنيف:PHP Function]]
[[تصنيف:PHP String]]

المراجعة الحالية بتاريخ 12:16، 8 أبريل 2018

(PHP 4, PHP 5, PHP 7)

تُنَسِق الدالة number_format()‎ الأعداد بالآلاف لعرضها.

الوصف

string number_format ( float $number [, int $decimals = 0 ] )

string number_format ( float $number , int $decimals = 0 , string $dec_point = "." , string $thousands_sep = "," )

تقبل الدالة number_format()‎ معاملًا واحدًا أو معاملين اثنين أو أربعة معاملات (لا تقبل الدالة number_format()‎ ثلاثة معاملات).

  • إذا مُرِّرَ إلى الدالة number_format()‎ معاملٌ واحد، فتُنَسِق الأعداد دون كسرها العُشري مع إضافة فاصلة (,) لكل مجموعة آلاف (أي فاصلة بين كل ثلاثة ارقام).
  • إذا مُرِّر إلى الدالة number_format()‎ معاملين اثنين، فتُنَسِق الأعداد مع الحفاظ على كسرها العُشري بإضافة نقطة (.) قبله، وستُضيف فاصلة (,) لكل  مجموعة آلاف (أي فاصلة بين كل ثلاثة ارقام).
  • إذا مُرِّرَ إلى الدالة number_format()‎ أربعة معاملات، فتُنَسِق الأعداد بعدد المعامل decimals من الكسور العُشرية مع إضافة المعامل dec_point (بدلًا من .) كفاصلٍ قبله. وستُضيف المعامل thousands_sep كفاصل لكل مجموعة آلاف (أي بدل الفاصلة ,).

المعاملات

number

الرقم المُراد تنسيقه.

decimals

يُحدد عدد االكسور العُشرية.

dec_point

يُحدد فاصل الكسور العشرية.

thousands_sep

يُحدد فاصل مجموعة الآلاف.

القيم المعادة

تُعيد الدالة number_format()‎ نسخة منسقة من المعامل number.

سجل التغييرات

الإصدار الوصف
7.2.0 عُدِلت الدالة number_format()‎ حتى لا تُعيد القيمة 0-، قبل هذا كانت الدالة تُعيد القيمة 0- لأعداد مثل 0.01-.
5.4.0 دعمت الدالة number_format()‎ قيم المعاملات dec_point و thousands_sep المكونة من عدة بايتات. النسخ السابقة كانت تأخذ البايت الأول في الحسبان فقط لقيم المعاملات.

أمثلة

المثال 1: مثال بسيط عن الدالة number_format()‎

على سبيل المثال، يستعمل التنسيق الفرنسي رقمين للكسور العشرية و فاصلة (,) لفصل الكسر العشري عن العدد وفراغ (' ') لفصل مجموعة الآلاف. المثال التالي يُبين طرق عديدة لتنسيق الأعداد.

<?php
$number = 1234.56;

// التنسيق الإنكليزي (الافتراضي)
$english_format_number = number_format($number);
// 1,235

// التنسيق الفرنسي
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56

$number = 1234.5678;
// التنسيق الإنكليزي دون فاصلٍ للآلاف
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
?>

انظر أيضًا

  • sprintf()‎: إعادة سلسلة نصية منسقة.
  • money_format()‎ : تَنسيق رقم للعرض كالعملات.
  • sscanf()‎: إدخال بيانات إلى النظام من سلسلة نصية حسب تنسيق معين.
  • printf()‎: عرض سلسلة نصية منسقة.

مصادر