如何在php中动态生成数组?

如何在php中动态生成数组?,php,arrays,codeigniter,Php,Arrays,Codeigniter,在下面的代码中,foreach的重复是未知的。这取决于数据库记录 <?php $i = 0; foreach ($get_all_users as $row){ echo $name[$i] = $row->name; $i++; } ?> 事实上,我需要这样的东西:(当然不可能) 非常感谢。您只需定义一个空白数组,然后将值与空“index”

在下面的代码中,foreach的重复是未知的。这取决于数据库记录

<?php
$i = 0;
        foreach ($get_all_users as $row){                    
                echo $name[$i] = $row->name;
                $i++;
        }
?>
事实上,我需要这样的东西:(当然不可能)


非常感谢。

您只需定义一个空白数组,然后将值与空“index”一起放入其中

大概是这样的:

$names = array();
foreach ($get_all_users as $row){                    
  $names[] = $row->name;
}

您只需要定义一个空白数组,然后用空“index”将值放入其中

大概是这样的:

$names = array();
foreach ($get_all_users as $row){                    
  $names[] = $row->name;
}
更新 注意你的评论

$data['name'] = array(); 
foreach($get_all_users as $row){ 
    array_push($data['name'], $row->name);
}
更新 注意你的评论

$data['name'] = array(); 
foreach($get_all_users as $row){ 
    array_push($data['name'], $row->name);
}

您不需要使用两个循环,只需使用一个这样的循环:

$data['name'] = array();

foreach ($get_all_users as $row){                    
            $data['name'][] = $row->name;
}

您不需要使用两个循环,只需使用一个这样的循环:

$data['name'] = array();

foreach ($get_all_users as $row){                    
            $data['name'][] = $row->name;
}
也许这是:

$data = array_column($get_all_users, 'name');
这就是你需要的。有点不清楚……

可能是:

$data = array_column($get_all_users, 'name');


这就是你需要的。有点不清楚…./p>我不明白你的意思。yoy是否正在尝试在foreach中填充数组?您是否尝试过
array\u push()
?在foreach循环中构建数组是很有可能的,但我不知道您想要什么。你能试着改写你的文章,清楚地说明你的目标和你的问题吗?小心你的作业和平等$名称[$i]=$row->name;只是因为它在回声中并不意味着它不会被分配。我不明白你的意思。yoy是否正在尝试在foreach中填充数组?您是否尝试过
array\u push()
?在foreach循环中构建数组是很有可能的,但我不知道您想要什么。你能试着改写你的文章,清楚地说明你的目标和你的问题吗?小心你的作业和平等$名称[$i]=$row->name;仅仅因为它在回显中并不意味着它不会分配。但我必须像这样使用:$data['name',因为我想访问视图中我使用的$namecodeigniter@vahidnajafi那就用它吧?它不会改变答案。您可以使用$names[]['name']-这将创建具有数字索引的新元素,但您可以迭代它并使用'name'标识符访问它。如果这样做,您必须迭代整个数组并测试每个元素,以查看名称是否匹配。最好使用名称作为索引。至少,如果你知道这个名字,你可以直接访问它。你是正确的,那么来自用户3980820的答案更多的是关于这里需要什么-这个问题有点模糊(至少对我来说:),但我必须像这样使用:$data['name'],因为我想访问我使用的$namecodeigniter@vahidnajafi那就用它吧?它不会改变答案。您可以使用$names[]['name']-这将创建具有数字索引的新元素,但您可以迭代它并使用'name'标识符访问它。如果这样做,您必须迭代整个数组并测试每个元素,以查看名称是否匹配。最好使用名称作为索引。至少,如果你知道这个名字,你可以直接访问它。你是正确的,那么来自用户3980820的答案更多的是关于这里需要什么-这个问题有点模糊(至少对我来说:),但我必须这样使用:$data['name']因为我想在视图中访问$name,所以我使用了codeigniter。@vahidnajafi您是否需要一个名称数组,在
$data['name']
中?@vahidnajafi没问题!函数
array\u push
不需要知道您的数组大小。它只是将新值推送到
$data['names']
数组的末尾。非常感谢。这正是我的答案。对不起,我不能投票。再次谢谢你。我不能投票,因为我的名声不好。我会尽快投赞成票。非常感谢。但我必须这样使用:$data['name'],因为我想访问$name的视图,所以我使用codeigniter。@vahidnajafi您需要一个名称数组吗,在
$data['name']
中?@vahidnajafi没问题!函数
array\u push
不需要知道您的数组大小。它只是将新值推送到
$data['names']
数组的末尾。非常感谢。这正是我的答案。对不起,我不能投票。再次谢谢你。我不能投票,因为我的名声不好。我会尽快投赞成票。谢谢。