ما هو null/nil في PHP وكيفية التعامل معه؟
مرحبًا بالجميع! أنا مبتدئ في PHP وأحاول فهم النوع null (أو nil كما يُسمى أحيانًا). في التوثيق مكتوب أنه قيمة خاصة تعني "غياب القيمة"، لكن في الممارسة العملية أواجه أخطاء غريبة.
على سبيل المثال، أكتب كودًا بسيطًا:
$user = getUserFromDatabase($id); // الدالة قد ترجع null إذا لم يتم العثور على المستخدم
echo $user->name;
إذا تم العثور على المستخدم، كل شيء يعمل، ولكن إذا لم يتم العثور عليه — يظهر خطأ "Trying to get property 'name' of non-object". أفهم أنني بحاجة للتحقق من null، لكن كيف أفعل ذلك بشكل صحيح؟ جربت if ($user != null) و if (is_null($user))، لكن أحيانًا يكون السلوك مختلفًا. أيضًا سمعت عن العامل ?? (null coalescing) — هل يعمل فقط مع المتغيرات أم مع الخصائص أيضًا؟
سؤال آخر: كيف أميز بين null وسلسلة فارغة أو false؟ كان لدي موقف حيث