0

ややばかげた質問だと思いますが、答えが必要です。

私はこの短い学習プロジェクトを行っています。そこでは、JSONを出力するためのデータベースを取得する必要があります。

テーブルを構造化する方法は知っていますが、テーブルの履歴が非常に短いため、テーブルセル内のオブジェクトの配列(この例ではpointsOfInterestとevents)を処理​​する方法がわかりません。それらのために別々のテーブルを作成し、どういうわけかそれぞれのために別々のテーブルへの参照を残す必要がありますか?そして、PHPでそれらをどのように処理しますか?

TL:DR; このようなJSON出力を可能にするためにデータベースをどのように構成する必要がありますか?:

{id: 'oyafestivalen',
 displayName: 'Øyafestivalen 2011',
 description: 'Music festival in Middelalderparken, Oslo',
 pointsOfInterest: [
   {id: 'sjosiden',
    displayName: 'Sjøsiden',
    lat: 59.904453,
    lng: 10.762905},
   {id:   'vika',
    displayName: 'Vika',
    lat:  59.906086,
    lng: 10.763276},
   {type: 'wc',     // type is optional, defaults to 'venue'
    // displayName optional, not specified here
    lat: 59.903625,
    lng: 10.763276},
   {type: 'firstaid',
    lat: 59.903625,
    lng: 10.763276},
   {type: 'entrance',
    lat: 59.903625,
    lng: 10.763276},
   {type: 'exit',
    lat: 59.903625,
    lng: 10.763276},
   {type: 'camping',
    lat: 59.903625,
    lng: 10.763276},
   {type: 'food',
    displayName: 'Random restaurant name',
    description: 'They serve good food. Vegetarian-friendly',
    lat: 59.903625,
    lng: 10.763276},
   {type: 'drinks',
    displayName: 'Random bar name',
    lat: 59.903625,
    lng: 10.763029}
 ],
 events: [
   {displayName: 'Kyuss Lives!',
    venue: 'sjosiden',
    startDateTime: '2011-08-13T19:30',
    endDateTime: '2011-08-13T21:00',
    tags: ['rock', 'stoner']},
   {displayName: 'Givers',
    description: 'Givers are an indie pop group from Lafayette, Louisiana. The band is made up     of...',
    venue: 'vika',
    // Default one hour duration if no endTime
    startDateTime: '2011-08-13T18:05',
    tags: ['pop', 'indie']}
 ]
4

1 に答える 1

0

テーブルの構造を教えたり、その出力を取得するために実行する必要のある正確なクエリを教えたりすることはできませんが、これはわかります。

SQLクエリからそのような出力を生成することはおそらくできません。ただし、複数のクエリを使用してそのような出力を作成し、PHPを使用してそれらの出力を操作して、多次元配列を作成することができます。たとえば、pointsOfInterestのコンテンツは別のクエリである必要があります。PHPで目的の出力を使用print_r()して、配列がどのように動作しているかを確認できるようにします。必要なものが得られたらjson_encode()、PHPで配列をjson文字列に変換するために使用します。

于 2012-12-20T16:29:07.377 に答える