أنواع البيانات في PHP — شرح الكود والنتيجة خطوة بخطوة

في الدرس السابق تعلمت كيف تنشئ متغيراً. الآن نحتاج أن نفهم نوع القيمة داخل المتغير. لأن نوع البيانات يؤثر على طريقة المعالجة والطباعة والمقارنة.

ما المقصود بأنواع البيانات؟

نوع البيانات (Data Type) يعني: ما طبيعة القيمة المخزنة داخل المتغير؟ هل هي نص؟ رقم صحيح؟ رقم عشري؟ قيمة منطقية؟

في هذا الدرس سنركز على الأنواع الأكثر استخداماً في البداية: String، Integer، Float، Boolean.

1) النصوص (String)

الكود:

<?php
$site = "DevArabi";
echo $site;
?>

ما يظهر في المتصفح:

DevArabi

لأن القيمة بين علامات اقتباس، PHP تتعامل معها كنص (String).

2) الأرقام الصحيحة (Integer)

الكود:

<?php
$students = 120;
echo $students;
?>

ما يظهر في المتصفح:

120

هذا رقم صحيح بدون فاصلة عشرية، لذلك نوعه Integer.

3) الأرقام العشرية (Float)

الكود:

<?php
$price = 10.5;
echo $price;
?>

ما يظهر في المتصفح:

10.5

وجود الجزء العشري يجعل النوع Float.

4) القيم المنطقية (Boolean)

الكود:

<?php
$isLoggedIn = true;
echo $isLoggedIn;
?>

ما يظهر في المتصفح:

1

عند الطباعة بـ echo، القيمة true تظهر غالباً كـ 1، بينما false لا يظهر لها نص واضح. لهذا السبب نستخدم var_dump() لرؤية النوع والقيمة بدقة.

كيف نعرف نوع المتغير بدقة؟ باستخدام var_dump()

الكود:

<?php
$name = "Rachid";
$age = 25;
$rating = 4.7;
$isAdmin = false;

var_dump($name);
echo "<br>";
var_dump($age);
echo "<br>";
var_dump($rating);
echo "<br>";
var_dump($isAdmin);
?>

ما يظهر في المتصفح (تقريباً):

string(6) "Rachid"
int(25)
float(4.7)
bool(false)

هذه أفضل طريقة للمبتدئ ليتأكد من النوع الحقيقي للمتغير أثناء التعلم.

هل PHP تتطلب تحديد النوع مسبقاً؟

لا. PHP لغة مرنة في الأنواع (Loosely Typed)، يعني النوع يُحدد تلقائياً حسب القيمة:

<?php
$value = "100"; // الآن String
var_dump($value);

$value = 100;   // الآن Integer
var_dump($value);
?>

النتيجة: نفس المتغير يمكن أن يحمل أنواعاً مختلفة في أوقات مختلفة.

أخطاء شائعة عند فهم أنواع البيانات

  • الاعتقاد أن "100" و 100 نفس الشيء دائماً (الأول نص والثاني رقم).
  • الاعتماد على echo فقط لفهم النوع، خاصة مع Boolean.
  • الخلط بين Integer وFloat عند العمليات الحسابية.
  • نسيان فحص النوع عند ظهور نتائج غير متوقعة.

تمرين سريع

  1. أنشئ 4 متغيرات: اسم (String)، عمر (Integer)، سعر (Float)، حالة تسجيل دخول (Boolean).
  2. اطبع القيم بـ echo.
  3. بعدها استخدم var_dump() لكل متغير وقارن النتائج.

الأسئلة الشائعة — FAQ

ما الفرق بين Integer وFloat؟

Integer رقم صحيح بدون فاصلة، Float رقم يحتوي جزءاً عشرياً.

هل يجب أن أحدد نوع المتغير يدوياً في PHP؟

لا في هذا المستوى. PHP تحدد النوع تلقائياً حسب القيمة.

ما فائدة var_dump()؟

تعرض النوع والقيمة بدقة، وهي أداة مهمة جداً للتعلم والتصحيح.

كيف يظهر Boolean عند الطباعة؟

غالباً true يظهر كـ 1 وfalse لا يظهر كنص واضح مع echo، لذلك الأفضل استخدام var_dump().

في الدرس القادم سننتقل إلى: الثوابت (Constants) في PHP.

ممتاز! الآن أصبحت ترى بوضوح الفرق بين نوع الكود ونوع الناتج المعروض في المتصفح. هذا الفهم مهم جداً قبل الدخول في الشروط والعمليات.
المحرر الذكي

اكتب الكود وشاهد النتيجة فوراً

جرب الآن مجاناً
قناة ديف عربي

تابع أحدث الدروس والتحديثات مباشرة على واتساب

انضم الآن