🧮 احتراف التعامل مع الأرقام باستخدام Math Functions في PHP

بعد أن تعلمت كيف تتعامل مع المتغيرات والعمليات الحسابية الأساسية (مثل الجمع والطرح)، حان الوقت لننتقل إلى مستوى أكثر احترافية. 🚀

في لغة PHP، لا نحتاج دائماً إلى كتابة معادلات رياضية معقدة من الصفر، بل توفر لنا اللغة مجموعة من "الدوال الجاهزة" (Built-in Functions) التي تقوم بالعمليات الحسابية بدلاً منا وبسرعة فائقة. سنركز في هذا الدرس على أهم الدوال التي ستحتاجها في أغلب مشاريعك البرمجية.


1️⃣ دالة التقريب round() 🔄

تُستخدم هذه الدالة لتقريب الرقم العشري إلى أقرب عدد صحيح. القاعدة بسيطة: إذا كان الكسر 0.5 أو أكثر، يتم التقريب للأعلى، وإذا كان أقل من 0.5، يتم التقريب للأسفل.

مثال عملي:

<?php
$number1 = 3.4;
$number2 = 3.6;

echo round($number1); // الناتج سيكون 3
echo "<br>"; 
echo round($number2); // الناتج سيكون 4
?>

💡 ملاحظة إضافية: يمكنك تحديد عدد الخانات العشرية التي تريد التقريب إليها بإضافة رقم ثانٍ داخل القوسين.

<?php
$price = 10.5678;
echo round($price, 2); // الناتج سيكون 10.57 (تم التقريب لأقرب خانتين)
?>

2️⃣ دالة السقف ceil() و دالة الأرضية floor() 🏠

أحياناً نحتاج لتقريب الرقم دائماً للأعلى أو دائماً للأسفل بغض النظر عن قيمة الكسر. هنا نستخدم ceil و floor.

أ- دالة ceil() (التقريب للأعلى):

كلمة Ceil تعني "سقف"، وهي تقوم بتقريب أي رقم عشري إلى أصغر عدد صحيح أكبر منه.

<?php
$value = 4.1;
echo ceil($value); // الناتج سيكون 5 (حتى لو كان الكسر صغيراً جداً)
?>

ب- دالة floor() (التقريب للأسفل):

كلمة Floor تعني "أرضية"، وهي تقوم بتقريب الرقم إلى أكبر عدد صحيح أصغر منه (ببساطة تقوم بحذف الكسر).

<?php
$value = 4.9;
echo floor($value); // الناتج سيكون 4 (حتى لو كان الكسر قريباً جداً من الرقم التالي)
?>

3️⃣ دالة القيمة المطلقة abs() 📏

تُستخدم هذه الدالة لتحويل أي رقم سالب إلى رقم موجب. القيمة المطلقة هي المسافة بين الرقم والصفر، والمسافة دائماً تكون موجبة.

مثال عملي:

<?php
$negativeNumber = -15;
$positiveNumber = 15;

echo abs($negativeNumber); // الناتج سيكون 15
echo "<br>";
echo abs($positiveNumber); // الناتج سيبقى 15
?>

4️⃣ توليد أرقام عشوائية rand() 🎲

هل تريد بناء لعبة بسيطة أو اختيار فائز عشوائي؟ دالة rand() هي الحل! تقوم هذه الدالة بتوليد رقم صحيح عشوائي بين قيمتين تحددهما أنت.

مثال عملي:

<?php
// توليد رقم عشوائي بين 1 و 10
$randomNumber = rand(1, 10);

echo "Your lucky number is: " . $randomNumber; 
?>

📝 ملخص سريع لما تعلمناه:

الدالة الوظيفة مثال النتيجة
round() تقريب رياضي منطقي round(3.6) 4
ceil() تقريب للأعلى دائماً ceil(3.1) 4
floor() تقريب للأسفل دائماً floor(3.9) 3
abs() تحويل الرقم لموجب abs(-5) 5
rand() رقم عشوائي rand(1, 5) رقم بين 1 و 5