Symfony Непонятный синтаксис

echolog

Новичок
Код:
// src/Acme/AccountBundle/Form/Type/UserType.php
namespace Acme\AccountBundle\Form\Type;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;

class UserType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
Не очень понятен новый синтаксис PHP 5.3, в частности, в контексте Symfony.

Указан в примере array $options, при этом не понятно откуда берется этот массив, слово array, как я понял, это Scalar type hints.

Вот с FormBuilderInterface $builder совсем не понятно, это тоже Scalar type hints? Или это объект, который берет данные с $builder?
 

Hello

Новичок
$builder должен быть объектом унаследованным от FormBuilderInterface
$options должен быть массивом
 

echolog

Новичок
Имеет, забыл ссылку привести, http://symfony.com/doc/current/book/forms.html, раздел "Creating Form Classes".

Создается в котролере метод с 2 аргументами, $builder, $options, не понятно, откуда будут браться этот объект и значения этого массива, или в примере это не приводится, то есть я сам их должен внести, либо контролер эти данные получит от маршрутизатора.
 
Последнее редактирование:

hell0w0rd

Продвинутый новичок
echolog, совсем никакого отношения. Ты описываешь метод и по большому счету тебе все равно откуда кто и как туда запихнет аргументы. Ты знаешь лишь то, что эта функция никогда не будет вызвана без этих аргументов, это просто ядро php не даст сделать.
А вот если у тебя вопрос кто и когда на деле эту функцию вызовет - во первых посмотри в сторону xdebug, во вторых внимательно посмотри что делается в методах контроллера, а именно createForm()
 
Сверху