Avatar ·

خطأ "Creating default object from empty value" في PHP: الأسباب والإصلاح

مرحباً بالجميع! لقد بدأت للتو في تعلم PHP وواجهت خطأ غريباً لا أستطيع فهمه.

لدي كود بسيط حيث أحاول إنشاء object وتعيين خاصية له فوراً:

<?php
$user = new stdClass();
$user->name = 'John';
$user->age = 25;

// ثم قررت التبسيط وكتبت هكذا:
$user2->name = 'Jane'; // هنا يحدث الخطأ!
?>

أحصل على تحذير: "Creating default object from empty value". في الأمثلة التعليمية السابقة، رأيت أنه يمكن كتابة $obj->property = value دون تعريف $obj = new stdClass()، وكان ذلك يعمل. لكن الآن PHP يشتكي. لماذا يحدث هذا؟

أفهم أن $user2 غير معرف، لكن أليس من المفترض أن يقوم PHP بإنشاء object فارغ بنفسه؟ في JavaScript مثلاً، كان هذا سيعمل. ربما أفتقد شيئاً في إعدادات PHP؟ أم أن هذا يعتمد على الإصدار؟

أرجو إرشادي، كيف يمكن إنشاء objects "بسرعة" دون