JSON & PHP - правильное построение строк - PullRequest
2 голосов
/ 09 октября 2010

Итак, у меня есть объект, содержащий несколько строк из базы данных (с использованием PHP).

Как мне организовать их в массив для прохождения через JSON?

Например, скажемЯ хочу перечислить некоторых пользователей.Я уже выполнил правильный запрос, и у меня есть объект с именем $u

foreach($u as $user)
    {
        $rows['name'] = $user->firstname . $user->lastname;
    }

Теперь я новичок в JSON и пытаюсь найти простой способ доступа к строкам позже.,Для этого примера мне нужно было бы иметь доступ к «имя», «зарегистрирован» и «идентификатор».Как мне создать массив перед использованием json_encode();?

1 Ответ

3 голосов
/ 09 октября 2010

Как-то так будет хорошо работать ...

$users = array(
    array(
            'name' => 'bob',
            'registered' => TRUE,
            'id' => $id
        ), ...
);

header('Content-Type: application/json');
echo json_encode($users);

(очевидно, заменить переменные и строки).

Вот пример вывода ...

[{"name":"bob","registered":true,"id":7}]

Как вы можете видеть , это объект JavaScript, который является первым членом массива.

Если ваша библиотека отправляет заголовок XHR (jQuery делает), вы также можете проверить наличие

($_SERVER['X_HTTP_REQUESTED_WITH'] === 'XMLHttpRequest')

Возможно, вы также захотите убедиться, что заголовок существует с isset() или array_key_exists(). Проверка этого заголовка не обязательна, но она может помочь, когда файл может быть запрошен с помощью AJAX или явно запрошен и соответственно обслуживает различные виды (JSON или HTML)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...