أنواع البيانات (Data Types) في لغة PHP تُستخدم لتحديد نوع القيمة التي يمكن تخزينها في متغير. هذا مهم جدًا لفهم كيفية عمل PHP وكيفية التعامل مع البيانات المختلفة. إليك الأنواع الرئيسية للبيانات في PHP مع شرح مُبسط:

1. الأنواع البسيطة (Scalar Types): تُستخدم لتخزين قيمة واحدة فقط.

  • القيم المنطقية (Boolean): تمثل إما true (صحيح) أو false (خاطئ). تُستخدم عادةً في العمليات الشرطية.
  • الأعداد الصحيحة (Integer): أرقام كاملة بدون كسور عشرية، مثل 10، -5، 0.
  • الأعداد العشرية (Float/Double): أرقام تحتوي على كسور عشرية، مثل 3.14، -0.5، 2.0. يُطلق عليها أحيانًا "أرقام الفاصلة العائمة".
  • السلاسل النصية (String): تسلسل من الأحرف، مثل "Hello, world!"، 'PHP is fun'. تُوضع السلاسل النصية بين علامتي اقتباس مفردة (') أو مزدوجة (").

2. الأنواع المركبة (Compound Types): تُستخدم لتخزين مجموعة من القيم.

  • المصفوفات (Array): تُخزن مجموعة من القيم بترتيب معين. يمكن أن تحتوي المصفوفة على أنواع بيانات مختلفة في نفس الوقت.
  • الكائنات (Object): تُستخدم لتمثيل "كائنات" تحتوي على بيانات (خصائص) وأفعال (طرق). هذا أساس البرمجة الكائنية (OOP).

3. الأنواع الخاصة (Special Types):

  • الموارد (Resource): تُستخدم لتمثيل موارد خارجية مثل اتصالات قواعد البيانات أو الملفات المفتوحة.
  • NULL: يمثل غياب أي قيمة. يُستخدم للإشارة إلى أن المتغير لا يحتوي على أي بيانات.

شرح إضافي مع أمثلة:

  • Boolean:

    PHP
    $isLoggedIn = true; // قيمة منطقية صحيحة
    $isValid = false; // قيمة منطقية خاطئة
  • Integer:

    PHP
    $age = 30;
    $count = -10;
  • Float/Double:

    PHP
    $price = 9.99;
    $pi = 3.14159;
  • String:

    PHP
    $name = "Ahmed";
    $message = 'This is a string.';
  • Array:

    PHP
    $colors = array("Red", "Green", "Blue");
    $person = array("name" => "Ali", "age" => 25);
  • Object: (مثال بسيط)

    PHP
    class Car {
    public $color;
    }

    $myCar = new Car();
    $myCar->color = "Black";
  • NULL:

    PHP
    $username = null; // المتغير لا يحتوي على قيمة
    

ملاحظات مهمة:

  • التحويل التلقائي للأنواع (Type Juggling): PHP يقوم بتحويل أنواع البيانات تلقائيًا في بعض الحالات. هذا قد يكون مفيدًا ولكنه قد يؤدي أيضًا إلى أخطاء إذا لم يتم فهمه جيدًا.
  • الدوال الخاصة بفحص الأنواع: PHP يوفر دوال لفحص نوع المتغير، مثل is_int(), is_string(), is_array(), إلخ.

فهم أنواع البيانات في PHP ضروري لكتابة أكواد فعّالة وخالية من الأخطاء. آمل أن يكون هذا الشرح مُفصلاً ومُفيدًا.