Я пытаюсь вытащить значение 2D-массива с помощью foreach. У меня этот массив, например:Foreach с 2D-массивами
$ud['prc']['col1']
$ud['prc']['col2']
....
Мой цикл:
foreach ($ud['arc'] as $name => $rank) {
if ($name != 'user_ID') {
echo "<tr><td>{$name}</td><td>{$rank}</td></tr>";
}
}
Этот код по какой-то причине печати первой строки таблицы с номером массива (название как «0
» ($ud['prc']['0']
) а не его настоящее имя 'col1
')
вместо печати меня:
<tr><td>col1</td><td>value of col1</td></tr>
<tr><td>col2</td><td>value of col2</td></tr>
<tr><td>col3</td><td>value of col3</td></tr>
Он печатает это:
<tr><td>0</td><td>value of col1</td></tr>
<tr><td>col1</td><td>value of col1</td></tr>
<tr><td>1</td><td>value of col1</td></tr>
<tr><td>col2</td><td>value of col2</td></tr>
<tr><td>2</td><td>value of col1</td></tr>
<tr><td>col3</td><td>value of col3</td></tr>
Я действительно надеюсь, что я объяснил себя достаточно хорошо, если бы не комментировать, пожалуйста, и скажите, что вы не поняли, так что я мог бы объяснил вам.
Я использую это в сочетании с MySQL
Вот мой MySQL код:
$ud['arc']
массив содержит следующее:
$arc_q= mysql_query("SELECT * FROM arc WHERE user_ID='$id'");
$arc = mysql_fetch_array($arc_q);
$ud['arc'] = $arc;
Этот массив является результатом команды SQL? –
Является ли ваш массив заполнен результатами запроса? –
Показать свой массив со значениями. Также измените ваш цикл foreach '$ ud ['arc']' to '$ ud ['prc']' – user2936213