Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony 3表单,如何将布尔值数组传递到我的表单_Php_Forms_Symfony_Symfony Forms_Symfony3.x - Fatal编程技术网

Php Symfony 3表单,如何将布尔值数组传递到我的表单

Php Symfony 3表单,如何将布尔值数组传递到我的表单,php,forms,symfony,symfony-forms,symfony3.x,Php,Forms,Symfony,Symfony Forms,Symfony3.x,我的实体中有一个简单的56个布尔数组,这些布尔表示一个正方形。 我被卡住了,不知道如何通过表单传递这些布尔值 更新: 实体如下所示: 在我的构造器中 $arraydispo = []; $i = 0; while ($i <= 55) { $arraydispo[] = 0; $i++; } $this->setDisponibilite($arraydispo); $arraydispo=[]; $i=0; 而($i setDisponibilite($arraydisp

我的实体中有一个简单的56个布尔数组,这些布尔表示一个正方形。
我被卡住了,不知道如何通过表单传递这些布尔值

更新

实体如下所示:

在我的构造器中

$arraydispo = [];
$i = 0;
while ($i <= 55) {
  $arraydispo[] = 0;
  $i++;
}
$this->setDisponibilite($arraydispo);
$arraydispo=[];
$i=0;
而($i setDisponibilite($arraydispo);
我为一个进度落后的客户工作,对实体没有控制权,我被迫这样做。

我设法用一个集合类型发送数组,但它被作为键值发送,因为它不是一维数组,所以我不能使用CheckBoxType。在这种情况下,我会选择CheckBoxType,因为如果选中它将返回true,如果不选中它将返回null,剩下的就是将null值作为false处理。

可能有一个设计错误请向我们展示您的模型,尤其是您的array@JimPanse,是的,谢谢你的建议,更新了它56
CheckboxType
s?如果他就是这样映射的,那么他无论如何都要渲染56个元素。我已经设法通过一个包含CheckboxType的CollectionType发送了所有数据,但是因为我的数组是一个key->value array它不起作用HMMM可能这是一种特殊情况,需要特殊的自定义表单类型…类似于输入矩阵表,这取决于您喜欢如何处理表单中的数据。但是,在我看来,以这种方式表示数据(数组)似乎不是一种真正干净的面向对象的方式,无论代表多少数据对象都使用扩展的选择类型。(=复选框,但只有一个formtype字段)
$arraydispo = [];
$i = 0;
while ($i <= 55) {
  $arraydispo[] = 0;
  $i++;
}
$this->setDisponibilite($arraydispo);