Как сделать один элемент $ format в PHP обязательным

В настоящее время я пытаюсь превратить поле «псевдоним» из необязательного в обязательное. Но каждый подход приводит к пустой, сломанной странице.

Моей первой идеей было просто добавить ->setRequired(true) под псевдонимом $ this, но это сломало страницу. Затем я попытался отделить его с помощью

$format = [alias] = (new FormField();
->setName('alias')
            ->setLabel(
                $this->getFieldLabel('alias')
            )
)

. Затем я попробовал это:

       if ($field === 'alias') {
                if ($this->country->need_zip_code) {
                    $formField->setRequired(true);
                }
            }

Вдохновленный другими частями кода в том же файле, но я быстро понял, что, не зная Синтаксис, и ничего о базовой работе, я не смогу изменить его самостоятельно.

public function getFormat()
{
    $fields = AddressFormat::getOrderedAddressFields(
        $this->country->id,
        true,
        true
    );
    $required = array_flip(AddressFormat::getFieldsRequired());

    $format = [
        'id_address'  => (new FormField)
            ->setName('id_address')
            ->setType('hidden'),
        'id_customer' => (new FormField)
            ->setName('id_customer')
            ->setType('hidden'),
        'back' => (new FormField)
            ->setName('back')
            ->setType('hidden'),
        'token'       => (new FormField)
            ->setName('token')
            ->setType('hidden'),
        'alias'       => (new FormField)
            ->setName('alias')
            ->setLabel(
                $this->getFieldLabel('alias')
            )
    ];

Я ожидал, что поле псевдонима будет помечено как требуется, но вместо этого оно сломало страницу.

0
задан John Doe 19 January 2019 в 15:01
поделиться