我无法启动我的简单 Fixture,我以正确的方式安装了捆绑包,并将 2 行放入 autoload.php 和 Appkernel.php 中,如此处所述,然后我创建了我的 Fixture 类,如下所示:
<?php
namespace ABCBundle\DataFixtures\ORM;
use Doctrine\Common\DataFixtures\FixtureInterface;
use ABCBundle\Entity\Rubrica;
class LoadRubricaData implements FixtureInterface
{
public function load(ObjectManager $manager)
{
$rubrica = new Rubrica();
$rubrica->setX("XXX");
$manager->persist($rubrica);
$manager->flush();
}
}
?>
但是当我尝试从 CLI 启动它时
php 应用程序/控制台原则:fixtures:load
我得到:
致命错误:ABCBundle\DataFixtures\ORM\LoadRubricaData::load() 的声明必须与 [...]ABCBundle/DataFixtures/ORM/LoadRubricaData.php 中的 Doctrine\Common\DataFixtures\FixtureInterface::load() 的声明兼容在第 10 行
但是如果你去看看那个界面你会发现它是正确的:
interface FixtureInterface
{
/**
* Load data fixtures with the passed EntityManager
*
* @param Doctrine\Common\Persistence\ObjectManager $manager
*/
function load(ObjectManager $manager);
}
怎么了?