JSON PHP: это правильный путь? - PullRequest
1 голос
/ 19 апреля 2011

Я просто хотел получить некоторую информацию об использовании JSON.

<?php
header('Content-Type: text/plain');

//results
$results = array();
for($i=0;$i<20;$i++)
{
    $result = array();
    $result['name'] = 'Test Season '.ceil(($i+1)/13).' Episode '.(($i%13)+1);
    //$result['torrent'] = 'https://www.example.com/?id='.$i.'&key='.uniqid();
    $result['torrents'] = array();
        $c = mt_rand(1,4);
        for($j=0;$j<$c;$j++)
        {
            $torrent = array();
            $torrent['url'] = 'https://www.example.com/?id='.uniqid().'&key='.md5(uniqid());
            $torrent['codec'] = $j%2 == 0 ? 'xvid' : 'h264';
            $torrent['resolution'] = '720p';
            $result['torrents'][] = $torrent;
        }
    $results[] = $result; //push
}
echo json_encode($results);
?>

Это всего лишь некоторый тестовый код, а не реальная реализация.Я использую JSON правильно и слишком полно?Или какой-то лучший способ сделать это?

У меня есть легальные торренты, с которыми я хотел бы сделать JSON.Торренты сгруппированы по именам, которые содержат несколько торрентов (фактические ссылки на данные).И другая информация, такая как кодек и т. Д.

Я впервые вывожу JSON, будет ли XML лучше?

Есть ли какие-либо руководства по этой теме (надеюсь, не целые книги)?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 19 апреля 2011

Абсолютно хорошо.Вы можете изменить только тип MIME, чтобы он соответствовал RFC 4627 : application/json.

0 голосов
/ 19 апреля 2011

То, что вы делаете, правильно. Мне нравится использовать StdClass для создания объектов, а не массивов значений ключей, просто потому, что это выглядит сексуальнее! Э.Г.

$torrent = new StdClass();
$torrent->url = 'https://www.example.com/?id='.uniqid().'&key='.md5(uniqid());
$torrent->codec = $j%2 == 0 ? 'xvid' : 'h264';
$torrent->resolution = '720p';
$result['torrents'][] = $torrent;

Поскольку вы говорите, что вам не нужно читать целую книгу по этому вопросу, я бы посмотрел здесь http://php.net/manual/en/book.json.php, чтобы разобраться с основами JSON.

С точки зрения JSON против XML, я считаю, что гораздо проще представлять данные в виде JSON, так как легче получать конкретные данные, которые вам нужны, точно так же, как вы можете получить доступ к информации в объекте stdClass.

[EDIT] И, как говорит Стефан Гериг, убедитесь, что вы определили тип своего контента как «application / json».

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