Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.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 包含动态子数组的数组;仅捕获最后一个子载波_Php_Mysql_Arrays_Multidimensional Array - Fatal编程技术网

Php 包含动态子数组的数组;仅捕获最后一个子载波

Php 包含动态子数组的数组;仅捕获最后一个子载波,php,mysql,arrays,multidimensional-array,Php,Mysql,Arrays,Multidimensional Array,我已经在这堵墙上敲了一天半了。我需要将数组输入到标记脚本中。标记脚本运行良好,我已经使用静态编写的数组验证了这一点。所需的数组包含从mysql查询中动态提取的子数组 var_转储告诉我mysql查询确实在提取所有相关记录。但是,我在尝试创建包含所有这些子数组的主数组时遇到了问题。它只想用最后一个子数组创建一个主数组。我希望这个描述能让你走上正轨。现在了解一些代码: while($row = mysql_fetch_array($get_labels))

我已经在这堵墙上敲了一天半了。我需要将数组输入到标记脚本中。标记脚本运行良好,我已经使用静态编写的数组验证了这一点。所需的数组包含从mysql查询中动态提取的子数组

var_转储告诉我mysql查询确实在提取所有相关记录。但是,我在尝试创建包含所有这些子数组的主数组时遇到了问题。它只想用最后一个子数组创建一个主数组。我希望这个描述能让你走上正轨。现在了解一些代码:

            while($row = mysql_fetch_array($get_labels))
         {
           foreach($row as $key => $value)
                                  { 
            $addresses=array(
                array(
                    "name" => $row['title1'],
                    "address_1" => $row['Street_No'],
                    "address_2" => $row['Street'],
                    "city" => $row['City'],
                    "state" => $row['State'],
                    "zipcode" => $row['zip']
                    )
                    );
                     }
            }
以下是上述代码的示例var_转储:

    array(1) { [0]=> array(6) { ["name"]=> string(12) "PERSONS NAME" 
    ["address_1"]=>string(4) "7006" ["address_2"]=> string(12) "N HOLIDAY DR"   
    ["city"]=> string(9) "SOMECITY" ["state"]=> string(2) "ST" 
    ["zipcode"]=> string(5) "00000" } }
以及由标签脚本处理的输出:

    PERSONS NAME
    7006 N HOLIDAY DR
    SOMECITY, ST 00000  
现在,真正的问题是——我如何编写上述代码,以便获得:

    array(2 or more) { [0]=> array(6) { ["name"]=> string(12) "PERSONS NAME" 
    ["address_1"]=>string(4) "7006" ["address_2"]=> string(12) "N HOLIDAY DR"   
    ["city"]=> string(9) "SOMECITY" ["state"]=> string(2) "ST" 
    ["zipcode"]=> string(5) "00000" }{ [1]=> array(6) { ["name"]=> string(12) 
    "ANOTHER DUDE" ["address_1"]=>string(4) "7125" ["address_2"]=> string(12) 
    "N HOLIDAY DR" ["city"]=> string(9) "SOMECITY" ["state"]=> string(2) "ST" 
    ["zipcode"]=> string(5) "00000" } ...and so on, as long as the query runs }
这将在标签脚本上输出,如下所示:

    PERSONS NAME                    ANOTHER DUDE
    7006 N HOLIDAY DR               7125 N HOLIDAY DR
    SOMECITY, ST 00000              SOMECITY, ST 00000
标签脚本很好,正是上面的脚本提供了标签脚本,我需要帮助调试


我真希望有人能帮我。提前感谢。

您需要在其上附加以下内容,而不是每次覆盖
$addresses

$addresses[] = array(
    "name" => $row['title1'],
    "address_1" => $row['Street_No'],
    "address_2" => $row['Street'],
    "city" => $row['City'],
    "state" => $row['State'],
    "zipcode" => $row['zip']
);
此外,您不需要为每个人设置内部的

$addresses = [];
while ($row = mysql_fetch_array($get_labels)) {
    $addresses[] = ...
}

希望你能看看我确实看过这个,谢谢。当我第一次在下面使用Jack的建议时,我让每个数组迭代12次。真是一团糟!然后我完全删除了foreach语句,只使用了while循环,它工作得非常好。再次感谢!对我来说,这是一个世界级的无聊时刻!非常感谢你,杰克。一旦我使用它并删除了foreach循环,我就得到了完美的结果。好极了@不客气;顺便说一句,这还不够,但是不要再使用老的
mysql\uquot/code>函数了:)杰克,你当然是对的,但我不是一个全职的php程序员。我是一家初创公司的运营副总裁。我负担不起让程序员为我工作,所以我只能靠自己应付这些事情。当我有一点时间来研究它时,我会让自己更加熟悉php和更新的编码实践。再次感谢。