実現したい内容
ファイルの拡張子は.phpで、PHPを実行するとJSONとして表示され、保存したときの拡張子は.php.jsonとなるPHPを書きたいです。
作りたいものと同じように表示されるサイトです。
↑ ご確認をお願い致します。
私が作れたもの
{ "VERSION": { "id": "2016-06-08 13:54:40" }, "INFODATA": { "0": { "category": "Porn", "date": "2019/03/08(金)12時41分25秒", "serchWord": "朝日みくる", "thumbnail": "http://pbs.twimg.com/profile_images/980958368041918464/nl7CBoSG_normal.jpg", "thumbnailID": "p1500050", "title": "朝日みくる", "summary": "ニューハーフのAVを布教するのは流石にハードル高いと思った" }, "1": { "category": "Porn", "date": "2019/03/08(金)12時41分18秒", "serchWord": "鈴木リズ@AV監督&営業&広報????減量中!", "thumbnail": "http://pbs.twimg.com/profile_images/967585174467756033/1AR8EQSf_normal.jpg", "thumbnailID": "p1500050", "title": "鈴木リズ@AV監督&営業&広報????減量中!", "summary": "RT @omoti194: あたい、ゲイ風俗で色々な世界と人を知り始める(前編) 後編は来週の金曜にアップします???? 今までのお話はこちらから読めますわ???? https://t.co/USDyTuOGXr https://t.co/Mfaptx0ZO8" } }, "e0": { "category": "Porn", "version": "1", "template": "http://afururu.s25.xrea.com/www/detail/det_sample.html", "date": "2019/03/08(金)12時41分25秒", "hiddenDate": "2019/03/09", "title": "朝日みくる", "tag": "AV,セクシー", "template": "Girl/Twitter", "summary": "沖縄生まれのニューハーフ、オタクで甘えんぼな、「みくるん」こと朝日みくるです。 ニューハーフヘルスLIBE東京店に所属してます。", "thumbnail": "http://pbs.twimg.com/profile_images/980958368041918464/nl7CBoSG_normal.jpg", "image": "https://pbs.twimg.com/profile_banners/796613842658848768/1524577764", "description": "朝日みくる", "serchWord": "朝日みくる", "siteName": "MikuruAsahi", "url": "https://t.co/NehOXZFzen", "lat": "", "lng": "", "address": "ニューハーフヘルスLIBE東京店", "tel": "", "streetview": "朝日みくる", "maker": "maker_ev", "cite": "Twitter" } }
該当のソースコード
<?php // 設定 $bearer_token = '秘密????'; // ベアラートークン $request_url = 'https://api.twitter.com/1.1/lists/statuses.json'; // エンドポイント // パラメータ (オプション) $params = array( "list_id" => "秘密????" ); // パラメータがある場合 if ($params) { $request_url .= '?' . http_build_query($params); } // リクエスト用のコンテキスト $context = array( 'http' => array( 'method' => 'GET', // リクエストメソッド 'header' => array( // ヘッダー 'Authorization: Bearer ' . $bearer_token ) ) ); // cURLを使ってリクエスト $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $request_url); curl_setopt($curl, CURLOPT_HEADER, 1); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $context['http']['method']); // メソッド curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 証明書の検証を行わない curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // curl_execの結果を文字列で返す curl_setopt($curl, CURLOPT_HTTPHEADER, $context['http']['header']); // ヘッダー curl_setopt($curl, CURLOPT_TIMEOUT, 5); // タイムアウトの秒数 $res1 = curl_exec($curl); $res2 = curl_getinfo($curl); curl_close($curl); // 取得したデータ $json = substr($res1, $res2['header_size']); // 取得したデータ $header = substr($res1, 0, $res2['header_size']); // レスポンスヘッダー // JSONをオブジェクトに変換 $obj = json_decode($json, true); // 出力 $json_count = count($obj); file_put_contents('TwitterList.json', $json); echo '{<br>'; echo '    "VERSION": {<br>'; echo '        "id": "2016-06-08 13:54:40"<br>'; echo '    },<br>'; echo '    "INFODATA": {<br>'; for ($i = 0; $i <= 1; $i++) { echo '        "'. $i . '": {<br>'; echo '            "category": "Porn",<br>'; $created_at = $obj[$i]["created_at"]; $week = ['日','月','火','水','木','金','土']; $day = date('w'); $datetime = date('Y/m/d(' . $week[$day] . ')H時i分s秒', strtotime($created_at)); echo '            "date": "' . $datetime . '",<br>'; echo '            "serchWord": "' . pg_escape_string($obj[$i]["user"]["name"]) . '",<br>'; echo '            "thumbnail": "' . $obj[$i]["user"]["profile_image_url"] . '",<br>'; echo '            "thumbnailID": "p1500050",<br>'; echo '            "title": "' . pg_escape_string($obj[$i]["user"]["name"]) . '",<br>'; echo '            "summary": "' . pg_escape_string($obj[$i]["text"]) . '"<br>'; if ($i < 1) { echo '        },<br>'; } else { echo '        }<br>'; } } echo '    },<br>'; for ($i = 0; $i <= $json_count - 1; $i++) { echo '    "e'. $i . '": {<br>'; echo '        "category": "Porn",<br>'; echo '        "version": "1",<br>'; echo '        "template": "http://afururu.s25.xrea.com/www/detail/det_sample.html",<br>'; $created_at = $obj[$i]["created_at"]; $week = ['日','月','火','水','木','金','土']; $day = date('w'); $datetime = date('Y/m/d(' . $week[$day] . ')H時i分s秒', strtotime($created_at)); echo '        "date": "' . $datetime . '",<br>'; echo '        "hiddenDate": "' . date('Y/m/d', strtotime('+1 day')) . '",<br>'; echo '        "title": "' . pg_escape_string($obj[$i]["user"]["name"]) . '",<br>'; echo '        "tag": "AV,セクシー",<br>'; echo '        "template": "Girl/Twitter",<br>'; echo '        "summary": "' . pg_escape_string($obj[$i]["user"]["description"]) . '",<br>'; echo '        "thumbnail": "' . $obj[$i]["user"]["profile_image_url"] . '",<br>'; echo '        "image": "' . pg_escape_string($obj[$i]["user"]["profile_banner_url"]) . '",<br>'; echo '        "description": "' . pg_escape_string($obj[$i]["user"]["name"]) . '",<br>'; echo '        "serchWord": "' . pg_escape_string($obj[$i]["user"]["name"]) . '",<br>'; echo '        "siteName": "' . pg_escape_string($obj[$i]["user"]["screen_name"]) . '",<br>'; echo '        "url": "' . pg_escape_string($obj[$i]["user"]["url"]) . '",<br>'; echo '        "lat": "' . pg_escape_string($obj[$i]["user"]["coordinates"]["coordinates"]["0"]) . '",<br>'; echo '        "lng": "' . pg_escape_string($obj[$i]["user"]["coordinates"]["coordinates"]["1"]) . '",<br>'; echo '        "address": "' . pg_escape_string($obj[$i]["user"]["location"]) . '",<br>'; echo '        "tel": "",<br>'; echo '        "streetview": "' . pg_escape_string($obj[$i]["user"]["name"]) . '",<br>'; echo '        "maker": "maker_ev",<br>'; echo '        "cite": "Twitter"<br>'; if ($i < $json_count - 1) { echo '        },<br>'; } else { echo '        }<br>'; } } echo '}';
困っていること
どのようにしたら、PHPをJSONとして表示できるでしょうか?
echoで記述したら文字列が表示されるだけと分かっているのですが、.phpのままJSONを表示する方法が分かりません。
回答2件
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2019/03/08 05:15