语法Help - 变量中的变量引用

时间:2013-09-04 18:57:17

标签: php arrays

我有以下foreach循环

$i = 1;
    $array = array();
    foreach ($titles as $title){
        if (empty($title) ){
            echo "EMPTY " .$i ;
        }else{
            array_push($array, $_POST['miles'.$i.'1']);
        }
        $i++;
    }

array_push($array, $_POST['miles'.$i.'1']);行应该在第一个循环中为数组添加$_POST['miles11']的值(只要$ title不为空)。

然后在下一个循环值$_POST['miles21']等等

然而,这不起作用,因为实际上没有任何内容只是添加到数组中。 我假设我没有正确的语法来执行上述操作,但我不确定这样做的正确方法。

谢谢

实施例

如果所有$ title都不为空,则数组如下所示:

 Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => ) 

如果有些是空的,我们会得到例如:

EMPTY 1EMPTY 3EMPTY 5EMPTY 7Array ( [0] => [1] => [2] => ) 

2 个答案:

答案 0 :(得分:0)

array_push($array, $_POST['miles'.$i.'1']);

实际上需要

array_push($array, $_POST['miles1'.$i]);

再次查看我的$ _POST后

答案 1 :(得分:0)

$i = 1;
$data['miles21'] = 'aku';
$titles= array(0=>'1',1=>'2',3=>'3',4=>'4',5=>'5',6=>'6');
$array = array();
foreach ($titles as $title){
    if (empty($title) ){
        echo "EMPTY " .$i ;
    }else{
        array_push($array, $data['miles'.$i.'1']);
    }
    var_dump($data['miles'.$i.'1']);
    $i++;
}
var_dump($array);

我尝试这段代码,数据$ array将在索引1中有数据“aku”...

使用var_dump($ title),var_dump($ _ POST ['miles'。$ i.'1'])等进行仔细检查......