নতুন প্রবর্তিত সম্পত্তি ধরণের ইঙ্গিতগুলি ব্যবহার করার জন্য আমি আমার শ্রেণির সংজ্ঞাগুলি আপডেট করেছি:
class Foo {
private int $id;
private ?string $val;
private DateTimeInterface $createdAt;
private ?DateTimeInterface $updatedAt;
public function __construct(int $id) {
$this->id = $id;
}
public function getId(): int { return $this->id; }
public function getVal(): ?string { return $this->val; }
public function getCreatedAt(): ?DateTimeInterface { return $this->createdAt; }
public function getUpdatedAt(): ?DateTimeInterface { return $this->updatedAt; }
public function setVal(?string $val) { $this->val = $val; }
public function setCreatedAt(DateTimeInterface $date) { $this->createdAt = $date; }
public function setUpdatedAt(DateTimeInterface $date) { $this->updatedAt = $date; }
}
কিন্তু মতবাদে আমার সত্তা বাঁচানোর চেষ্টা করার সময় আমি এই বলে একটি ত্রুটি পাচ্ছি:
টাইপ করা সম্পত্তি আরম্ভের আগে অবশ্যই অ্যাক্সেস করা উচিত নয়
এটি কেবল $id
বা এর সাথেই ঘটে না $createdAt
তবে ঘটে $value
বা $updatedAt
যা হ'ল সংক্ষিপ্ত বৈশিষ্ট্য।