PHP将2个值存储到1个数组索引中

时间:2013-10-03 00:59:18

标签: php mysql arrays multidimensional-array

我正在尝试创建一种多维数组,它从数据库获取2个值并存储到数组中的1个索引中

示例x [0] = Jille,595

我这样做

while ($row = mysql_fetch_array($result2)) 
{ 
    $opponents[] = $row['opponents']; 
    $fixId= array($row['fixture_id'] => $opponents) ; //Is this line correct??
}

然后在我的代码中我想使用$ fixId数组,该数组应该为每个索引保存2个值 我是这样做的:

foreach($fixid as $id => $oppname){
    echo "<option value=\"$oppname\" >".$oppname;"</option>"; 
}

然而,值$id无效,而$oppname没有值或取一些奇怪的值。

我做错了什么?

2 个答案:

答案 0 :(得分:2)

你可以这样做:

while ($row = mysql_fetch_array($result2)) 
{ 
     $opponents[] = array('oppname' => $row['opponents'], 'oppid' => $row['fixture_id']) ; 
}


foreach ($opponents as $opp) {
     echo '<option value="'.$opp['oppid'].'">'.$opp['oppname'].'</option>';
}

答案 1 :(得分:0)

试试这个:

$fixId = array();
while ($row = mysql_fetch_array($result2)) 
{ 
 $opponents[] = $row['opponents']; 
 $fixId[] = array('fixture_id' => $opponents) ;       
}

我做了这个测试:

<?php
 $fixId = array();

 $opponents[] ="Jille, 595"; 
 $fixId[] = array('fixture_id' => $opponents) ;

 var_dump($fixId);
?>

显示:array(1) { [0]=> array(1) { ["fixture_id"]=> array(1) { [0]=> string(10) "Jille, 595" } } }