Add Additional Objects to JSON Encoded Array

Ich verwende derzeit ein JSON-codiertes Array, um die Benutzer in meiner Datenbank für eine automatische Vorschlagsfunktion anzuzeigen.

Es sieht ungefähr so aus:

$sth = mysql_query("SELECT id, name FROM users");

$json = array();

    while($row = mysql_fetch_assoc($sth)) {
        $json['name'] = $row['name'];
        $json['id'] = $row['id'];
        $data[] = $json;
    }

print json_encode($data);

Dies gibt zurück:

[{"id":"81","name":"John Doe"},{"id":"82","name":"Jane Doe"}]

Meine Frage ist etwas 2-fach:

Zuers, wie würde ich dieser Ausgabe manuell ein zusätzliches Objekt hinzufügen? Nehmen wir zum Beispiel an, ich wollte hinzufügen:{"id":"444","name":"A New Name"}

Thus, es würde so aussehen:

[{"id":"81","name":"John Doe"},{"id":"82","name":"Jane Doe"},{"id":"444","name":"A New Name"}]

Zweit, nehmen wir an, ich wollte dem Array auch weitere Objekte aus einer separaten Tabelle hinzufügen, z. B .:

$sth = mysql_query("SELECT id, title FROM another_table");

$json = array();

    while($row = mysql_fetch_assoc($sth)) {
        $json['name'] = $row['title'];
        $json['id'] = $row['id'];
        $data[] = $json;
    }

print json_encode($data);

Auf diese Weise könnten beide Tabellen im JSON-Array enthalten sein, sodass sie in meinem Autosuggest als zusätzliche Optionen angezeigt werden.

Hoffentlich macht dies Sinn, da ich mich sehr bemüht habe zu artikulieren, was ich zu erreichen versuche.

Vielen Dank

Antworten auf die Frage(8)

Ihre Antwort auf die Frage