将数组从页面发送到另一个

时间:2016-05-24 10:04:20

标签: php

table result vardumb result

无论如何

是否显示我的数据以正确适合单元格?

page1.php中

<td><input type='hidden' name='nom[]' value='".$row['nom']." ".$row['prenom']."'/></td>

使page2.php

$idArrays = array($_POST['nom'], $_POST['montant'], $_POST['disponible_fiche'],$_POST['date_f'],$_POST['observation'] );

   foreach ($idArrays as $idArray) {

        echo '<tr>';
            foreach ($idArray as $key ) {

               echo '<td>'.$key.'</td>';

           }
        echo '</tr>';

 }

1 个答案:

答案 0 :(得分:1)

如果你使$idArray有点不同,那就有效了。 如果所有数组具有相同的长度,则可以使用array_map以正确的格式创建新数组。

$idArrays = array_map(null,$_POST['nom'], $_POST['montant'], $_POST['disponible_fiche'],$_POST['date_f'],$_POST['observation'] );

如果某些数组较短,则会使用空值填充最长的数据。

然后你可以使用正常的foreach。

foreach ($idArrays as $idArray) {
    echo '<tr>';
    foreach ($idArray as $key ) {
        echo '<td>'.$key.'</td>';

    }
    echo '</tr>';
 }

说明:

这种方法&#34;拉链&#34;将数组放在一起,而不是制作原始数组的数组。

实施例

<?php
$a = array("1","2");
$b = array("a","b");
$c = array("!","§");
print_r(array_map(null,$a,$b,$c));
print_r(array($a,$b,$c));
?>

输出:

使用array_map

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => a
            [2] => !
        )

    [1] => Array
        (
            [0] => 2
            [1] => b
            [2] => §
        )

)

使用正常的数组声明:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
        )

    [1] => Array
        (
            [0] => a
            [1] => b
        )

    [2] => Array
        (
            [0] => !
            [1] => §
        )

)
相关问题