src/Entity/Image.php line 13

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\ImageRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. /**
  8.  * @ORM\Entity(repositoryClass=ImageRepository::class)
  9.  */
  10. class Image
  11. {
  12.     /**
  13.      * @ORM\Id
  14.      * @ORM\GeneratedValue
  15.      * @ORM\Column(type="integer")
  16.      */
  17.     private $id;
  18.     /**
  19.      * @ORM\Column(type="string", length=255)
  20.      */
  21.     private $name;
  22.     /**
  23.      * @ORM\ManyToMany(targetEntity=Article::class, mappedBy="images")
  24.      */
  25.     private $articles;
  26.     public function __construct()
  27.     {
  28.         $this->articles = new ArrayCollection();
  29.     }
  30.     public function getId(): ?int
  31.     {
  32.         return $this->id;
  33.     }
  34.     public function getName(): ?string
  35.     {
  36.         return $this->name;
  37.     }
  38.     public function setName(string $name): self
  39.     {
  40.         $this->name $name;
  41.         return $this;
  42.     }
  43.     /**
  44.      * @return Collection<int, Article>
  45.      */
  46.     public function getArticles(): Collection
  47.     {
  48.         return $this->articles;
  49.     }
  50.     public function addArticle(Article $article): self
  51.     {
  52.         if (!$this->articles->contains($article)) {
  53.             $this->articles[] = $article;
  54.             $article->addImage($this);
  55.         }
  56.         return $this;
  57.     }
  58.     public function removeArticle(Article $article): self
  59.     {
  60.         if ($this->articles->removeElement($article)) {
  61.             $article->removeImage($this);
  62.         }
  63.         return $this;
  64.     }
  65. }