callback = $callback; return $this; } /** * @return string[] */ public function getTagArray(): array { return $this->tagArray; } /** * @param string[] $tagArray * @return TagFixtures */ public function setTagArray(array $tagArray): TagFixtures { $this->tagArray = $tagArray; return $this; } /** * @param ObjectManager $manager * @return Tag[] */ public function load(ObjectManager $manager): array { $created = []; foreach ($this->getTagArray() as $tagName) { $tag = $this->createTagEntry($tagName); if (null !== $this->callback) { \call_user_func($this->callback, $tag); } $manager->persist($tag); $created[] = $tag; } $manager->flush(); return $created; } private function createTagEntry(string $tagName): Tag { $tagObject = new Tag(); $tagObject->setName($tagName); return $tagObject; } }