我遇到麻煩陣列的工作權利的時候,讓我告訴你這裏PHP數組問題循環和呼應
function scanArray(){
$al = sizeof($_userLoaders);
echo $al. "<br />";
for ($tr = 0; $tr <= $al; $tr++) {
echo "value: " .$tr. "<br />";
echo $_userLoaders[$tr];
}
}
//Fetch user's loaders.
$_userLoaders;
function get_user_loaders(){
$con = connectToMySQL();//connects to my_sql
mysql_select_db("my_database", $con);//connect database
$t = mysql_query("SELECT * FROM someTable
WHERE value_a=".$_SESSION['value_a']." AND value_b=someValue");
$x= 0;
//lets loop through the results and create an array to compare later.
while ($result = mysql_fetch_array($t)){
$_userLoaders[$x] = $result['value_c'];
$x++;
}
//lets get all the options for
print_r($_userLoaders);//this part prints what it should
scanArray();
}
沒關係的代碼,我最小化上面的代碼給你看這是怎麼回事。很多功能get_user_loaders()
工程很好。它從數據庫中的表中提取數據,並返回它應該的內容。其次,它使數組擺脫它。再一次,這部分工作很好。當print_r()
方法被調用它打印什麼應該,這裏有它打印的內容示例:
Array ([0] => tableValue)
是的,在這一點上,它只有一個值,請注意,這個值可以從任何數值變化到100這就是我使用數組的原因。在這種情況下,我用一個值來測試它。
現在,我撥打電話scanArray()
它不回顯值。
的scanArray()
功能呼應了以下內容:
0
value:
所以我不明白的是爲什麼它打印出來,但它並沒有顯示功能?提前致謝。
$ _userLoaders沒有在scanArray中定義,並且你有一個錯誤 - 'for($ tr = 0; $ tr <= $ al - 1; $ tr ++){' – botzko 2012-03-10 22:47:14