data = $data; $this->node = $node; } public function getId(): int { return $this->id_email_form; } // getData et updateData sont indentiques au code dans NodeData // plutôt qu'une interface, pourquoi pas une classe abstraite? ou peut-être un trait? public function getData(): array { return $this->data; } public function updateData(string $key, string|int|bool|array $value = ''): void { if($value !== ''){ $this->data[$key] = $value; } // si $value est vide, supprime la clé elseif(isset($this->data[$key])){ unset($this->data[$key]); } } public function setNode(?Node $node): void { $this->node = $node; } }