Я разработчик iOS и создаю веб-службы на PHP для получения ответа JSON.
Код, который я написал:
$result = mysqli_query($con,"SELECT * FROM wp_marketcatagories");
$data =array();
while($row = mysqli_fetch_array($result))
{
$data[] = array_push($data, array('id' => $row['id']));
}
$json = json_encode($data);
echo $json;
Вот чего я хочу в результате:
[{"id":"1"},{"id":"2"},{"id":"3"},{"id":"4"},{"id":"5"},{"id":"6"},{"id":"7"},{"id":"8"},{"id":"9"},{"id":"10"},{"id":"11"},{"id":"12"}]
Но приведенный выше код дает мне следующее:
[{"id":"1"},1,{"id":"2"},3,{"id":"3"},5,{"id":"4"},7,{"id":"5"},9,{"id":"6"},11,{"id":"7"},13,{"id":"8"},15,{"id":"9"},17,{"id":"10"},19,{"id":"11"},21,{"id":"12"},23]
Откуда эти 1, 3, 5, ....?
3 ответа
Нет необходимости назначать его $data[]
. Вы уже помещаете значения в массив $data
Просто используйте
array_push($data, array('id' => $row['id']));
Вместо того
$data[] = array_push($data, array('id' => $row['id']));
Вам не нужно назначать $ data дважды, поскольку вы написали вот так: $ data [] = array_push ($ data, array ('id' => $ row ['id']));
Array_push - помещает один или несколько элементов в конец массива синтаксис: array_push(array,value1,value2...)
Просто пиши
array_push($data, array('id' => $row['id']));
Или
$data[] = array('id' => $row['id']);
Array_Push (): возвращает новое количество элементов в массиве.
... отсюда берутся ваши числа, и вы добавляете их в массив с помощью оператора $data[] =
array_push($data, array('id' => $row['id']));
Или
$data[] = array('id' => $row['id']);
Тот же результат в этом сценарии
Похожие вопросы
Новые вопросы
php
PHP — это открытый, мультипарадигмальный, динамически типизированный и интерпретируемый язык сценариев, изначально разработанный для веб-разработки на стороне сервера. Используйте этот тег для вопросов о программировании на языке PHP.