مع تقديم تلميحات نوع الخاصية في PHP 7.4، من الضروري تعيين قيم صالحة لـ PHP جميع الخصائص لضمان احترام أنواعها المعلنة. خاصية غير محددة، بدون قيمة معينة، تفشل في مطابقة أي نوع معلن وتؤدي إلى ظهور رسالة الخطأ: "يجب عدم الوصول إلى الخاصية المكتوبة قبل التهيئة".
على سبيل المثال، ضع في اعتبارك الكود أدناه:
class Foo { private string $val; public function __construct(int $id) { $this->id = $id; } public function getVal(): string { return $this->val; } }
قد يؤدي الوصول إلى $val بعد إنشاء Foo إلى حدوث خطأ، حيث لم يتم تعريف نوعه بعد (غير محدد !== null).
لحل هذه المشكلة، قم بتعيين قيم لجميع الخصائص أثناء البناء أو تعيين القيم الافتراضية لهم:
class Foo { private string $val = null; // default null value public function __construct(int $id) { $this->id = $id; } }
الآن، جميع الخصائص لها قيم صالحة، مما يؤدي إلى إزالة الخطأ.
يمكن أن تنشأ هذه المشكلة أيضًا عند الاعتماد على قيم قاعدة البيانات لخصائص الكيان، مثل المعرفات التي تم إنشاؤها تلقائيًا أو الطوابع الزمنية. بالنسبة للمعرفات التي تم إنشاؤها تلقائيًا، أعلنها على أنها فارغة:
private ?int $id = null;
بالنسبة لجميع المعرفات الأخرى، اختر القيم الافتراضية المناسبة التي تتوافق مع أنواعها.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3