次のようなURLからデコードするJSONオブジェクトがあります。
$var = json_decode(file_get_contents($url), true);
私が取得しているデータは、文字データを含む JSON オブジェクトとして返される新しい Battle.net API からのものです。
- 文字が見つかり、生成されるデータがある実際のリンクは次のとおりです: Character Found。
- ここに、存在せず、エラーを生成する文字のリンクがあります: Character Not Found。
エラーは、"status" および "reason" 属性を含む JSON オブジェクトとして返されます。「ステータス」属性の値は常に「nok」になります。
私の問題は、文字が見つからない場合、JSON オブジェクト $var が NULL であり、見つかった場合、JSON オブジェクト $var には正しいデータが含まれていることです。適切なエラーメッセージを出力できるように、ステータスが「nok」であるかどうかを確認できる必要があります
私は持っている:
- リンクをチェックして、正しく生成されていることを確認しました。
- に変更
json_decode(file_get_contents($url), true)
しjson_decode(file_get_contents($url), false)
、$var をオブジェクトとしてアクセスしてみました。 - 代わりにcURLを使用してみました
file_get_contents($url)
Battle.net API フォーラムに投稿しましたが、ここでも試してみようと思いました。