الفرق بين المراجعتين ل"PHP/round"

من موسوعة حسوب
< PHP
اذهب إلى التنقل اذهب إلى البحث
ط (استبدال النص - 'PHP/Function/ceil' ب'PHP/ceil')
ط (نقل عبد اللطيف ايمش صفحة PHP/Function/round إلى PHP/round: إعادة هيكلة التوثيق)
 
(4 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 9: سطر 9:
 
</syntaxhighlight>تعيد هذه الدالة القيمة المقرَّبة للمعامل <code>value</code> بحسب الدقَّة المحدَّدة في المعامل <code>precision</code> (عدد الأرقام بعد الفاصلة). يمكن أن تكون قيمة المعامل <code>precision</code> صفرًا وهي القيمة الافتراضيَّة أو قيمة سالبة.
 
</syntaxhighlight>تعيد هذه الدالة القيمة المقرَّبة للمعامل <code>value</code> بحسب الدقَّة المحدَّدة في المعامل <code>precision</code> (عدد الأرقام بعد الفاصلة). يمكن أن تكون قيمة المعامل <code>precision</code> صفرًا وهي القيمة الافتراضيَّة أو قيمة سالبة.
  
ملاحظة: لا يمكن أن تتعامل PHP مع سلاسل نصيَّة مثل "12,300.2" وتقريبها بطريقة صحيحة. راجع قسم [[PHP/Types/string|التحويل من السلاسل النصيَّة]].
+
ملاحظة: لا يمكن أن تتعامل PHP مع سلاسل نصيَّة مثل "12,300.2" وتقريبها بطريقة صحيحة. راجع قسم [[PHP/string|التحويل من السلاسل النصيَّة]].
  
 
== المعاملات ==
 
== المعاملات ==
سطر 107: سطر 107:
 
== انظر أيضًا ==
 
== انظر أيضًا ==
 
* الدالة <code>[[PHP/ceil|ceil()‎]]</code>: تُقرِّب العدد العشري إلى أكبر عدد صحيح.
 
* الدالة <code>[[PHP/ceil|ceil()‎]]</code>: تُقرِّب العدد العشري إلى أكبر عدد صحيح.
* الدالة <code>[[PHP/Function/floor|floor()‎]]</code>: تُقرِّب العدد العشري إلى أصغر عدد صحيح.
+
* الدالة <code>[[PHP/floor|floor()‎]]</code>: تُقرِّب العدد العشري إلى أصغر عدد صحيح.
* الدالة <code>[[PHP/Function/number-format|number_format()‎]]</code>: تُنسِّق الفاصلة العشرية وفاصلة الآلاف للعدد العشري.
+
* الدالة <code>[[PHP/number_format|number_format()‎]]</code>: تُنسِّق الفاصلة العشرية وفاصلة الآلاف للعدد العشري.
  
 
== مصادر ==
 
== مصادر ==

المراجعة الحالية بتاريخ 03:50، 4 أبريل 2018

(PHP 4, PHP 5, PHP 7)

تقرِّب الدالة round()‎ العدد العشري الممرَّر إليها.

الوصف

float round ( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )

تعيد هذه الدالة القيمة المقرَّبة للمعامل value بحسب الدقَّة المحدَّدة في المعامل precision (عدد الأرقام بعد الفاصلة). يمكن أن تكون قيمة المعامل precision صفرًا وهي القيمة الافتراضيَّة أو قيمة سالبة.

ملاحظة: لا يمكن أن تتعامل PHP مع سلاسل نصيَّة مثل "12,300.2" وتقريبها بطريقة صحيحة. راجع قسم التحويل من السلاسل النصيَّة.

المعاملات

val

القيمة العدديَّة المراد تقريبها.

precision

عدد الأرقام بعد الفاصلة المراد تقريب المعامل val إليها.

mode

استعمل أحد الثوابت الموضَّحة في الجدول التالي التي تحدِّد طريقة تقريب المعامل val.

الثابت الوصف
PHP_ROUND_HALF_UP يُقرَّب المعامل val إلى أبعد عدد عن الصفر بحسب الدقة المحدَّدة في المعامل precision عندما تساوي قيمة الرقم المقرَّب 5 أو تزيد. يُقرَّب العدد 1.5 مثلًا إلى 2 والعدد 1.5- إلى 2-.
PHP_ROUND_HALF_DOWN يُقرَّب المعامل val إلى أقرب عدد للصفر بحسب الدقة المحدَّدة في المعامل precision عندما تساوي قيمة الرقم المقرَّب 5 أو أكثر. يُقرَّب العدد 1.5 مثلًا إلى 1 والعدد 1.5- إلى 1-.
PHP_ROUND_HALF_EVEN يُقرَّب المعامل val إلى أقرب قيمة زوجيَّة بحسب الدقة المحدَّدة في المعامل precision.
PHP_ROUND_HALF_ODD يُقرَّب المعامل val إلى أقرب قيمة فرديَّة بحسب الدقة المحدَّدة في المعامل precision.

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

تُعاد القيمة المُقرَّبة للمعامل val.

أمثلة

المثال 1: استعمال الدالة round()‎

<?php
echo round(3.4);         // 3
echo round(3.5);         // 4
echo round(3.6);         // 4
echo round(3.6, 0);      // 4
echo round(1.95583, 2);  // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2);    // 5.05
echo round(5.055, 2);    // 5.06
?>

المثال 2: استعمال المعامل mode

<?php
echo round(9.5, 0, PHP_ROUND_HALF_UP);   // 10
echo round(9.5, 0, PHP_ROUND_HALF_DOWN); // 9
echo round(9.5, 0, PHP_ROUND_HALF_EVEN); // 10
echo round(9.5, 0, PHP_ROUND_HALF_ODD);  // 9

echo round(8.5, 0, PHP_ROUND_HALF_UP);   // 9
echo round(8.5, 0, PHP_ROUND_HALF_DOWN); // 8
echo round(8.5, 0, PHP_ROUND_HALF_EVEN); // 8
echo round(8.5, 0, PHP_ROUND_HALF_ODD);  // 9
?>

المثال 3: استعمال المعامل mode مع المعامل precision

<?php
/* mode = PHP_ROUND_HALF_UP, precision = 1 */
echo round( 1.55, 1, PHP_ROUND_HALF_UP);   //  1.6
echo round( 1.54, 1, PHP_ROUND_HALF_UP);   //  1.5
echo round(-1.55, 1, PHP_ROUND_HALF_UP);   // -1.6
echo round(-1.54, 1, PHP_ROUND_HALF_UP);   // -1.5

/* mode = PHP_ROUND_HALF_DOWN, precision = 1 */
echo round( 1.55, 1, PHP_ROUND_HALF_DOWN); //  1.5
echo round( 1.54, 1, PHP_ROUND_HALF_DOWN); //  1.5
echo round(-1.55, 1, PHP_ROUND_HALF_DOWN); // -1.5
echo round(-1.54, 1, PHP_ROUND_HALF_DOWN); // -1.5

/* mode = PHP_ROUND_HALF_EVEN , precision = 1 */
echo round( 1.55, 1, PHP_ROUND_HALF_EVEN); //  1.6
echo round( 1.54, 1, PHP_ROUND_HALF_EVEN); //  1.5
echo round(-1.55, 1, PHP_ROUND_HALF_EVEN); // -1.6
echo round(-1.54, 1, PHP_ROUND_HALF_EVEN); // -1.5

/* mode = PHP_ROUND_HALF_ODD, precision = 1 */
echo round( 1.55, 1, PHP_ROUND_HALF_ODD);  //  1.5
echo round( 1.54, 1, PHP_ROUND_HALF_ODD);  //  1.5
echo round(-1.55, 1, PHP_ROUND_HALF_ODD);  // -1.5
echo round(-1.54, 1, PHP_ROUND_HALF_ODD);  // -1.5
?>

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

الإصدار الوصف
5.3.0 إضافة المعامل mode مع ثوابته.
5.2.7 تغيير طريقة عمل الدالة لتتلائم مع معيار C99.

انظر أيضًا

  • الدالة ceil()‎: تُقرِّب العدد العشري إلى أكبر عدد صحيح.
  • الدالة floor()‎: تُقرِّب العدد العشري إلى أصغر عدد صحيح.
  • الدالة number_format()‎: تُنسِّق الفاصلة العشرية وفاصلة الآلاف للعدد العشري.

مصادر