正确使用PHP MYSQL数组

正确使用PHP MYSQL数组,php,mysql,Php,Mysql,我在PHP中很少使用数组。我有一张颜色表。我想将其加载到多维关联数组中,因为我将经常使用该表,不想反复进行选择 我做到了: $result = mysql_query("select * FROM color") or die(mysql_error()); $colors = ""; while($colorrec = mysql_fetch_array($result)){ $colors[$colorrec['ID']][0] = $colorrec['Description'];

我在PHP中很少使用数组。我有一张颜色表。我想将其加载到多维关联数组中,因为我将经常使用该表,不想反复进行选择

我做到了:

$result = mysql_query("select * FROM color") or die(mysql_error());
$colors = "";
 while($colorrec = mysql_fetch_array($result)){
 $colors[$colorrec['ID']][0] = $colorrec['Description'];
 $colors[$colorrec['ID']][1] = $colorrec['HexCode'];
}
然后,当我想访问颜色信息时,我可以执行以下操作:

echo "color code WHT";
echo "description ".$colors['WHT'][0];
echo "Hex Code ".$colors['WHT'][1];
$result = mysql_query("select * FROM color") or die(mysql_error());
$colors = array();
while($colorrec = mysql_fetch_array($result)){
   $colors[$colorrec['ID']] = array();
   $colors[$colorrec['ID']]['Desc'] = $colorrec['Description'];
   $colors[$colorrec['ID']]['Hex'] = $colorrec['HexCode'];
}

这是正确的方法吗?

确保这样做没有错。另外,如果您在数组中迷路了,只需快速打印($array),它就会为您输出结构

$colors = ""; //what?? this should be array()
这应该是这样的:

echo "color code WHT";
echo "description ".$colors['WHT'][0];
echo "Hex Code ".$colors['WHT'][1];
$result = mysql_query("select * FROM color") or die(mysql_error());
$colors = array();
while($colorrec = mysql_fetch_array($result)){
   $colors[$colorrec['ID']] = array();
   $colors[$colorrec['ID']]['Desc'] = $colorrec['Description'];
   $colors[$colorrec['ID']]['Hex'] = $colorrec['HexCode'];
}
然后你可以做:

echo "color code WHT";
echo "description ".$colors['WHT']['Desc'];
echo "Hex Code ".$colors['WHT']['Hex'];
尝试:

$result = mysql_query("select * FROM color") or die(mysql_error());
$colors = array();
 while($colorrec = mysql_fetch_array($result)){
 $colors[$colorrec['ID']] = array( 
              $colorrec['Description'] , 
              $colorrec['HexCode'] );
}

echo "color code WHT";
echo "description ".$colors['WHT'][0];
echo "Hex Code ".$colors['WHT'][1];
  • Neal你可以照他说的做,如果你想更干净的话就去吧(PHP5)
类颜色 { $description=“”; $hexcode=“”; $someOther=“”; } $colors=array(); $result=mysql_query(“选择*来自颜色”)或die(mysql_error()); while($colorrec=mysql\u fetch\u数组($result)) { $color=新颜色(); $id=$colorrec['HexCode']; $color->description=$colorrec['description']; $color->hexCode=$colorrec['hexCode']; $colors[$id]=$color; } echo$color['ID']->说明; echo$color['ID']->hexCode; 我是这样使用它的:

$numfields = mysql_num_fields($result);
while($red = mysql_fetch_array($result)){
     for ($j=0; $j<$numfields; $j++ ) {
          $field_name = mysql_field_name($result, $j);
          //create Matrix
          $datapull[$i][$field_name] = $red[$field_name]; 
      }
      $i++;
 }
 mysql_free_result($result);
 var_dump($datapull);
$numfields=mysql\u num\u字段($result);
而($red=mysql\u fetch\u数组($result)){
对于($j=0;$j)