在php中使用循环范围外的多维数组
我也想使用arrdataarray-outside-loop,如何在loops范围之外声明它,就好像现在没有正确填充它一样在php中使用循环范围外的多维数组,php,arrays,loops,multidimensional-array,scope,Php,Arrays,Loops,Multidimensional Array,Scope,我也想使用arrdataarray-outside-loop,如何在loops范围之外声明它,就好像现在没有正确填充它一样 $SQL = "SELECT * FROM DailyData WHERE User='$_SESSION[userID]'"; $result = mysql_query($SQL); $i=0; // trying this $arrData= array(); $arrData []= array(); whi
$SQL = "SELECT * FROM DailyData WHERE User='$_SESSION[userID]'";
$result = mysql_query($SQL);
$i=0;
// trying this
$arrData= array();
$arrData []= array();
while($row = mysql_fetch_array($result))
{
echo $row['Score'] . " " . $row['Date'];
$arrData[i][1]=$row['Date'];
$arrData[i][2]=$row['Score'];
$i++;
echo "<br />";
}
$SQL=“从DailyData中选择*,其中用户=“$”会话[userID]”;
$result=mysql\u查询($SQL);
$i=0;
//试试这个
$arrData=array();
$arrData[]=array();
while($row=mysql\u fetch\u数组($result))
{
回显$row['Score']。“.$row['Date'];
$arrData[i][1]=$row['Date'];
$arrData[i][2]=$row['Score'];
$i++;
回声“
”;
}
我想这可能就是你想要的:
$SQL = "SELECT * FROM DailyData WHERE User='$_SESSION[userID]'";
$result = mysql_query($SQL);
$arrData= array();
while($row = mysql_fetch_array($result))
{
$arrData[]=$row;
//you can also do some output here if you want
}
//arrData is now available outside the while-loop
foreach($arrData as $row) {
echo $row['Score'] . ' ' . $row['Date'] . '<br />';
}
$SQL=“从DailyData中选择*,其中用户=“$”会话[userID]”;
$result=mysql\u查询($SQL);
$arrData=array();
while($row=mysql\u fetch\u数组($result))
{
$arrData[]=$row;
//如果需要,也可以在此处进行一些输出
}
//arrData现在在while循环之外可用
foreach($arrData作为$row){
echo$row['Score'].'.$row['Date'..'.'br/>;
}
$arrData
在while
循环的范围之外可用
看起来你忘了美元符号:
$arrData[i][1]=$row['Date'];
$arrData[i][2]=$row['Score'];
应该是
$arrData[$i][1]=$row['Date'];
$arrData[$i][2]=$row['Score'];
在原文中,PHP认为您的意思是$arrData['i']
,这意味着您要继续编写$arrData['i'][1]
和$arrData['i'][2]
——但是,您正在增加$i
,因此您希望使用该变量-$arrData[$i][1]
和$arrData i][2]
您可以说得更具体一点,您的变量$arrData似乎位于while循环的外部范围内。。所以这段代码应该是golden,但是如何在循环的作用域之外正确地声明它,因为它没有正确地填充,只需使用$arrData=array();您不需要$arrdata[]=array();当你在循环中指定$arrData[i][x]时,它会自动在i上为你创建一个数组。你在这里所做的与$arrData=mysql_fetch_数组($result)完全相同;顺便说一句:p