2013-07-19 97 views
0

我的PHP調用是使用以下代碼從mySQL中存儲一個表。來自多維數組的回聲值

while (mysqli_stmt_fetch($stmtMyCountTotals)) { 
    $stmtMyCountTotalsrow = array(
     'IndividualUnitsCounted' => $IndividualUnitsCounted, 
     'IndividualUnitsAdjusted' => $IndividualUnitsAdjusted 
    ); 

    $stmtMyCountTotalsrows[] = $stmtMyCountTotalsrow; 
} 

$stmtMyCountTotals->close(); 

我似乎無法從中拉出個人價值。例如,如果我想從第1列第2行拉出一個數字,我知道這是一個基本問題,但我似乎無法找到答案。

+0

你好,這裏是你的最後一個問題,關於:'PHP來插入空個月後的foreach loop',我有解決方案。 – srain

+0

我想添加更多信息。刪除它意外。我會立刻重新發布堆棧會讓我大約9分鐘。 – DarkSpartan47

+0

nvm我取消刪除它。還在學習堆棧 – DarkSpartan47

回答

1

這是一個多維數組,所以你會像這樣訪問:

$row1col2 = $stmtMyCountTotalsrows[1][2] 
$row2col1 = $stmtMyCountTotalsrows[2][1] 

但既然是聯想你會想:

$var = $stmtMyCountTotalsrows[1]['IndividualUnitsCounted']; 

如果要通過列來訪問它,那麼您需要首先將列名檢索到一個數組中:

$cols = array_keys($stmtMyCountTotalsrows[0]); 
$var = $stmtMyCountTotalsrows[1][$cols[1]] 
//         ^where this is the column number 
+0

他的第二個維度是一個關聯數組,而不是數字。 – Barmar

+0

完美謝謝你 – DarkSpartan47

0

沒有列n在你的數組中,第二維是一個關聯數組。所以它應該是:

$stmtMyCountTotalsrows[$row_number]['IndividualUnitsCounted'] 
$stmtMyCountTotalsrows[$row_number]['IndividualUnitsAdjusted'] 
0

你在另一個數組中有一個數組。或者是一個多維數組。它看起來像這樣:

Array(
    0 => Array(
      'IndividualUnitsCounted' => 'Something', 
      'IndividualUnitsAdjusted' => 'Something Else' 
      ), 
    1 => Array(
      'IndividualUnitsCounted' => 'Yet another something', 
      'IndividualUnitsAdjusted' => 'Final something' 
      ), 
    ... 
    ... 
) 

如果陣列稱爲$stmtMyCountTotalsrows

$stmtMyCountTotalsrows[0]['IndividualUnitsCounted']回報「東西」 $stmtMyCountTotalsrows[0]['IndividualUnitsCounted']返回「其他」 $stmtMyCountTotalsrows[1]['IndividualUnitsAdjusted']返回「另一種東西」 $stmtMyCountTotalsrows[1]['IndividualUnitsAdjusted']返回「最後的東西」

0

如果您事先不知道列的名稱,則可以使用current()作爲第一個:

echo current($stmtMyCountTotalsrows[1]); 

另外,使用array_slice()

echo current(array_slice(stmtMyCountTotalsrows, 0, 1));