2014-07-13 17 views
0

我有一個以PHP編碼的應用程序,它根據用戶用戶名從MySQL數據庫中提取特定的一組數據。我回到像這樣的數據庫信息:獲取當前指數的名稱在foreach

function getUserImages($user, $startat = 0) { 
$con = openDBConnection(); 
$sql = $con->prepare("SELECT name,id FROM `pictures` WHERE user=? LIMIT ?, 10"); 
$sql->bind_param("si", $user, $startat); 
$sql->bind_result($picName, $picId); 
$sql->execute(); 
$arr = array(); 
while($sql->fetch()) { 
    $arr[$picId]=$picName; 
} 
return $arr; 
} 

現在假設我插入這個數組的方式是正確的,當我通過循環將其與foreach這樣的:

foreach($arr as $v) { 
echo '<a href="/index.php?pid=' . $CURRENT_ARRAY_INDICE_NAME . '">' 
echo '<img class="img-responsive img-rounded" src="url/'. $v .'.png" alt="Captured Image"'; 
echo '</a>'; 
} 

它應該獲取我剛剛插入的所有數據。我的問題是如何設置$CURRENT_ARRAY_INDICE_NAME的值。

+0

也許簡單的搜索怎樣的foreach()確實有效的幫助。 http://php.net/manual/en/control-structures.foreach.php –

+0

@RoyalBg是的,我實際上正在那個特定的頁面上盯着,看到了答案,並完全忽略了它。 – duper51

回答

2

用途:

foreach($arr as $k => $v) { 
    // $k is the current indice 
} 

docs此外,使用關聯數組時,$k是當前的關鍵和$v

+0

哇,我簡直就是在PHP文檔中爲foreach閱讀這個答案,並認爲自己,「呃,這只是多維數組」。我真的需要明顯地睡一覺。 – duper51