st-6ren">
gpt4 book ai didi

php - 从嵌套数组中提取数据

转载 作者:行者123 更新时间:2023-12-04 23:31:43 26 4
gpt4 key购买 nike

我有以下数组(通过 var_dump)$results:

array(4) { 
[0]=> array(5) {
[0]=> array(1) { ["evtId"]=> string(1) "2" }
[1]=> array(1) { ["evtId"]=> string(1) "3" }
[2]=> array(1) { ["evtId"]=> string(1) "4" }
[3]=> array(1) { ["evtId"]=> string(1) "5" }
[4]=> array(1) { ["evtId"]=> string(1) "6" }
[1]=> array(5) {
[0]=> array(1) { ["evtLocation"]=> string(2) "11 St Paul" }
[1]=> array(1) { ["evtLocation"]=> string(5) "12412 Horace St" }
[2]=> array(1) { ["evtLocation"]=> string(14) "Friends Center" }
[3]=> array(1) { ["evtLocation"]=> string(14) "Friends Center" }
[4]=> array(1) { ["evtLocation"]=> string(14) "Friends Center" }
[2]=> array(5) {
[0]=> array(1) { ["evtDate"]=> string(1) "11/12/2011" }
[1]=> array(1) { ["evtDate"]=> string(1) "06/05/2012" }
[2]=> array(1) { ["evtDate"]=> string(1) "10/10/2010" }
[3]=> array(1) { ["evtDate"]=> string(1) "06/06/2012" }
[4]=> array(1) { ["evtDate"]=> string(1) "10/12/2012" }
[3]=> array(5) {
[0]=> array(1) { ["evtType"]=> string(4) "Fun" }
[1]=> array(1) { ["evtType"]=> string(6) "Random" }
[2]=> array(1) { ["evtType"]=> string(9) "Childcare" }
[3]=> array(1) { ["evtType"]=> string(9) "Childcare" }
[4]=> array(1) { ["evtType"]=> string(9) "Childcare" }

我正在使用此数组将数据库信息提取到构建表的函数中。但是,我需要以下列格式结束:

$rows[] = array('2', '11 St Paul', '11/12/2011', 'Fun'); 

我真的只能走到这一步:

foreach ($events as $field_arr) {
//this gives me 4 arrays, each array containing all of the records for one field type.
}

现在我需要遍历四个数组中的每一个,从同一索引中取出一个值并将其添加到 $rows[] 数组中,我可以将其传递给建表函数。我尝试了以下变体(在初始 foreach 循环内)

 $x = count($result[0]); //this gives the number of fields
for ($i = 0; $i < $x; $i++) {
rows[$i] = $field_array[$i];
}

我已经尝试了半天的变化,但运气不佳(我最终得到的数组包含的元素数量是我需要的 4 倍,并且很难摆脱最终的数组键(['evtType'] 等)。如果有人能帮助我指出正确的方向,我将不胜感激。

最佳答案

这里发布的大多数代码看起来都非常冗长,所以这里有一个简短的版本:

$rows = array();
foreach ($results as $pairs)
{
foreach ($pairs as $rowNumber => $pair)
{
// current($pair) will give you the value
// you could use key($pair) to get the key too
$rows[$rowNumber][] = current($pair);
}
}

差不多就这些了。 $results 的每个元素都包含一个 key=>value 对列表,我们只对每对的值感兴趣。该对的索引是行的索引,我们将其存储在 $rowNumber 中。我运行了它,它似乎产生了预期的结果。

关于php - 从嵌套数组中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6312851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com