动态添加数组键 PHP

3

我正在 Silex 中创建一个根据需要自动更改的动态表单。

如果 $disabled = 'true',那么我该如何改变:

$form = $app['form.factory']->createBuilder('form')

->add('email', 'email', array(
    'data' => $from
))

to

$form = $app['form.factory']->createBuilder('form')

->add('email', 'email', array(
    'disabled' => true,
    'data' => $from
))

1
只是一般的评论 - 小心使用 true 作为布尔值和 'true' 作为字符串。你似乎同时使用了两者,这可能导致某些地方出错。下面的答案也将潜在的布尔值与字符串进行比较,这是错误的。 - astax
1个回答

2
你可以像这样完成它:
$form = $app['form.factory']->createBuilder('form');

$options = array(
    'data' => $from
);

if($disabled == 'true'){
    $options['disabled'] = true;
}

$form->add('email', 'email', $options)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接