使用array_push时出错

时间:2013-08-25 11:59:50

标签: php arrays array-push

我正在尝试使用array_push,但我收到的错误信息如下:

警告:array_push()期望参数1为数组,字符串在第50行的C:\ Users \ DMR \ Google Drive \ android \ maquetas \ show.php中给出

在我使用array_push的两个linew中,我不明白为什么,你能帮帮我吗?代码是下一个:

...

$etiquetes = array("N.I.F.", "Direcció");
$tipus = array("varchar", "varchar");
$columnes = array("CIF_NIF", "DIRECCION");
$llongituds = array(30, 30);

...

$i=0;
foreach ($etiquetes as $etiqueta) {
    $control = array_push($etiqueta, $columnes[$i], $tipus[$i], $llongituds[$i]);       <==== IT GIVE ME ERROR (ATTACHED AT THE END)
    $controls[$i % 2] = array_push($control); <==== IT GIVE ME ERROR (ATTACHED AT THE END)

    $i++;
}

2 个答案:

答案 0 :(得分:2)

$etiqueta不是数组

 array_push($etiqueta, ...

错了。您可能正在寻找:

 array_push($etiquetes, ...

另外,来自array_push()docs:

  

返回数组中新的元素数。

这意味着$ control将具有 int 值。所以你第二行

array_push($control);

当然是无效的,我建议你look at the docs并试着找出你打算做什么。

答案 1 :(得分:0)

这里最好回答,因为对你们所有人来说都会更清楚(我希望)

我将在这里解释我的解决方案,我有两个DIV左右,我有数组中的n个控件,我想要做的是当我在数组中循环时我设置了左边的损伤和pais in正确的,因为我使用了bucle:

foreach ($etiquetes as $etiqueta) {
     $control = array(array(), array(), array(), array());
     array_push($control, $etiqueta, $columnes[$i], $tipus[$i], $llongituds[$i]);       
     array_push($controls[$i % 2], $control);       

     $i++;
}

现在我拥有它很容易在html代码中设置。我在$ columnes之前设置的代码将是数据库中表的字段,$ etiquetes将是标签。

然后我需要输入长度,输入字段的类型等等......

然后屏幕将被设置。

我希望你能更清楚。现在我在这里编写的代码只是我必须提高性能。