我收到以下错误:
Fatal error: Declaration of Bean\OauthServerBundle\Form\Type\AuthorizeFormType::buildForm() must be compatible with Symfony\Component\Form\FormTypeInterface::buildForm(Symfony\Component\Form\FormBuilderInterface $builder, array $options) in src/Bean/OauthServerBundle/Form/Type/AuthorizeFormType.php on line 25
不确定为什么会收到此错误。 AbstractType::buildForm() 采用 FormBuilderInterface,Symfony2 为 FormBuilder 实现 FormBuilderInterface。
这是我的来源的内容:
<?php
namespace Bean\OauthServerBundle\Form\Type;
use Symfony\Component\Form\FormBuilder;
use Symfony\Component\Form\AbstractType;
class AuthorizeFormType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
/* some code ... */
}
/* more code ... */
}
最佳答案
FormBuilderInterface, and Symfony2 implements FormBuilderInterface for FormBuilder.
这并没有改变一个事实,即 buildForm
必须在父类中声明并接受任何实现 FormBuilderInterface
的对象。
关于PHP fatal error : I'm trying to implement a Form\AbstractType in my Symfony2 application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11704340/