6

I am iOS developer and I am making Webservices in PHP for getting JSON Response.

Code which I wrote is:

    $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;

This is what I want in result:

[{"id":"1"},{"id":"2"},{"id":"3"},{"id":"4"},{"id":"5"},{"id":"6"},{"id":"7"},{"id":"8"},{"id":"9"},{"id":"10"},{"id":"11"},{"id":"12"}]

But above code is giving me like this:

[{"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]

From where this 1, 3, 5 ,.... are coming ?

3 Answers 3

12

no need to assign it to $data[]. You are already pushing the values to the array $data

Just simply use

 array_push($data, array('id' => $row['id']));

instead of

 $data[] = array_push($data, array('id' => $row['id']));
Sign up to request clarification or add additional context in comments.

Comments

2

Array_Push(): Returns the new number of elements in the array.

...this is were your numbers are coming from and you're adding them to the array with your $data[] = statement

array_push($data, array('id' => $row['id']));

or

$data[] = array('id' => $row['id']);

Same result in this scenario

Comments

1

You don't require to assign $data twice as you have written like this: $data[] = array_push($data, array('id' => $row['id']));

array_push — Push one or more elements onto the end of array syntax : array_push(array,value1,value2...)

Just write

array_push($data, array('id' => $row['id']));

or

$data[] = array('id' => $row['id']);

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.