Я пытаюсь повторить последнее значение моего массива. По какой-то причине он ничего не печатает. Я могу повторить определенное значение, например
echo $array[0]['weight']
Печатает первое значение
$query = "SELECT * FROM calorycalc2 WHERE userid = $id[0]";
$result1 = mysqli_query($db, $query) or die(mysqli_error());
$array = array();
while($row = mysqli_fetch_assoc($result1)) {
$array[] = $row;
}
echo end($array['weight']);
4 ответа
Вам нужно получить последний элемент внешнего массива $array
, затем получить доступ к подиндексу weight
.
Обратите внимание, как скобки меняются на месте. end($array)
выбирает последний элемент, который сам по себе является массивом, доступ к которому можно получить с помощью ['weight']
echo end($array)['weight'];
Делая echo end($array['weight']);
, как вы делали изначально, вы просите PHP извлечь последний элемент массива $array['weight']
, но такого индекса нет weight
(есть только числовые индексы , $array[$x]
) в $array
.
Как объясняется в документах php end
возвращает последний запись в массиве, так что я могу догадаться из вашего кода, что вы хотите это:
echo end($array)['weight'];
То, что вы делаете, - это доступ к записи с помощью ключа 'weight'
$array['weight']
(это число, я думаю) и передача этого значения в функцию end
. Поскольку функция end
ожидает массив, а не число, это приведет к ошибке.
По вашему запросу есть только 1 строка результатов. Потому что вы получаете доступ к строке результата с указанным идентификатором. В этом случае вам не нужно зацикливать запрос. Требуется только если у вас есть несколько строк результатов. Для доступа к последнему элементу
$query = "SELECT * FROM calorycalc2 WHERE userid = $id[0]";
$result1 = mysqli_query($db, $query) or die(mysqli_error());
$array = array();
$row = mysqli_fetch_assoc($result1)
$i = 0;
while($row as $key=>$value) {
$array[$i] = $value;
$i++;
}
echo end($array);
Вы можете получить доступ к последнему элементу массива таким образом
echo $array[count($array)-1]['weight'];
Похожие вопросы
Новые вопросы
php
PHP - это широко используемый высокоуровневый, динамический, объектно-ориентированный и интерпретируемый язык сценариев, в первую очередь предназначенный для серверной веб-разработки. Используется для вопросов о языке PHP.