Php 如何将多维数组插入循环中的另一个数组?

Php 如何将多维数组插入循环中的另一个数组?,php,Php,我有以下代码: $postList = array(); foreach($post as $blue) { $text = $string; $url = trim(url); $newPost = array( "ID" => $counter, "Text" => $text, "url" => $url ); $postList = ar

我有以下代码:

$postList = array();

foreach($post as $blue)
{
    $text = $string;
    $url = trim(url);

    $newPost = array(  "ID" => $counter,
                        "Text" => $text,
                        "url" => $url );
    $postList = array_merge($postList, $newPost);
    $counter += 1;
}
这段代码不起作用,我在postList数组中找到的是最后一个post项,而不是列表。 如何将所有项插入数组中

提前感谢

试试这个

$postList = array();
$counter = 0;
foreach($post as $blue)
{
    $text = $string;
    $url = trim(url);

    $newPost = array(  "ID" => $counter,
                        "Text" => $text,
                        "url" => $url);
    $postList[] =  $newPost;
    $counter += 1;
}

保存并创建一个额外变量。请尝试:

$postList = array();

foreach($post as $blue)
{
    $text = $string;
    $url = trim(url);

    $postList[] = array(  "ID" => $counter,
                        "Text" => $text,
                        "url" => $url );
    $counter += 1;
}

在面向对象编程语言中,数组对象中有push方法。是这样的

array.push(element);
这意味着数组末尾的push元素。在PHP中也有push方法,但它是静态函数,PHP库就是这样。所以你可以这样做:

$persons = Array();
$person = Array('id' => 1, 'name' => 'my name');
array_push($persons, $person);


第一个更明确,你会更好地理解它的作用。您应该阅读有关PHP中数据结构的更多信息。

它很管用!非常感谢你。您能解释一下原因吗?我们每次都在创建
$newPost
,并将其分配给
$postList
数组。在PHP中,通过使用
[]
可以自动递增键。数组表示法是
$key=>$value
而不是
'key':'value'
侧注:
$url=trim(url)
行必须是打字错误,url(不带$)不表示任何内容(或是常量?)
$array[] = $element;