質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

207閲覧

とある外部APIを呼び出しJSON形式で出力したいがうまくいかない

oyashiro

総合スコア37

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2024/03/09 06:54

実現したいこと

この外部APIを呼び出し、waitnumberの値を出力させたいが、
json形式にならない。

https://api.neconome.com/W0A011.php?clientcode=999999&dt=20120521122345&mh=d41d8cd98f00b204e9800998ecf8427e&callback=test

発生している問題・分からないこと

json_decodeしてもnullになってしまう。

該当のソースコード

$url = "https://api.neconome.com/W0A011.php?clientcode=999999&dt=20120521122345&mh=d41d8cd98f00b204e9800998ecf8427e&callback=te"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); $response = str_replace('(', '', $response); $response = str_replace(')', '', $response); $result = json_decode($response); var_dump($response); $appInfoData = $result->test[0]; var_dump($appInfoData); ob_start(); ?> <div class="app-info-name"> <a href="<?php echo $appInfoData->trackViewUrl; ?>" target="_blank" rel="noopener"><?php echo $appInfoData->waitnumber; ?></a> </div>

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

jsonにデコードしてvar_dumpするとNULLが返ってくる

補足

特になし

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2024/03/09 07:44

> $response = curl_exec($ch); を実行後の $response には、どのような値が入っていますか?
guest

回答1

0

ベストアンサー

この外部APIを呼び出し、waitnumberの値を出力させたいが、

waitnumber の値が何に相当するのか分かりませんが、JSON 形式の文字列をデコードすると以下の様になります。

php

1<?php 2 3$url = "https://api.neconome.com/W0A011.php?clientcode=999999&dt=20120521122345&mh=d41d8cd98f00b204e9800998ecf8427e&callback=test"; 4$ch = curl_init(); 5curl_setopt($ch, CURLOPT_URL, $url); 6curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 7 8$response = curl_exec($ch); 9$response = preg_replace('/^.+?\((.+)\);$/', '$1', $response); 10$result = json_decode($response); 11var_dump($result); 12 13// object(stdClass)#2 (5) { 14// ["status"]=> 15// string(1) "1" 16// ["err"]=> 17// string(1) "2" 18// ["time"]=> 19// string(19) "2024/03/09 16:39:29" 20// ["no"]=> 21// string(10) "5999486116" 22// ["data"]=> 23// object(stdClass)#3 (0) { 24// } 25// }

投稿2024/03/09 07:45

melian

総合スコア19825

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

oyashiro

2024/03/09 08:22

ありがとうございます、無事に値を出力することが出来ました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問