同时变量数组

时间:2016-03-04 20:10:38

标签: php mysql arrays

我已经在堆栈中搜索了答案,但似乎找不到以下代码的解决方案:

$servers = array();
while($row = mysql_fetch_array( $result ))
{
   $servers[] = $row['name'] => array('ip' => $row['ip'],'port' => $row['port'],'info' => $row['info'],'purpose' => $row['purpose']),
}

我想要实现的是获取所有结果但我收到以下错误:

  

语法错误,意外' =>' (T_DOUBLE_ARROW)。

使它像这样只得到最后一项:

while($row = mysql_fetch_array( $result )) {
$servers = array(
    $row['name'] => array('ip' => $row['ip'],'port' => $row['port'],'info' => $row['info'],'purpose' => $row['purpose']),
    );
}

话虽这么说,$ servers在while循环中,因此它只是最后一项的索引。我不知道导致意外的原因=> :/

1 个答案:

答案 0 :(得分:1)

看起来你正试图这样做:

$servers = [];
while($row = mysql_fetch_array( $result )) {
   $servers[$row['name']] =  [
       'ip' => $row['ip'],
       'port' => $row['port'],
       'info' => $row['info'],
       'purpose' => $row['purpose']
   ];
}

它为您提供了一个最终的$servers数组,由服务器名称索引,并带有一系列详细信息。

旁注:正如Jay评论的那样,你真的不应该再使用mysql函数了,真的鼓励你查看mysqliPDO函数。< / em>的