json で検索結果を返す API を使用しています。これを PHP 配列にデコードし、配列をループして要素を変数として割り当てることで、そこから必要な要素を選択して、データベースに値を格納できるようにします。
私の問題は、検索パラメーターに依存するだけで、1 つまたは数十のプロパティが返される可能性があることです。私がこれを行うと、
$array = json_decode(file_get_contents("http://search-query-url&output=json"));
foreach($array as $cur) {
$key1 = $cur->item_title;
$key2 = $cur->item_url;
$key3 = $cur->item_location;
echo $key1 . " " . $key2 . " " . $key3 "<br>";
}
... item_location (key3) が json 出力に存在しない限り、すべて問題ありません。このような場合、「未定義のプロパティ: stdClass::$item_location」というエラーが表示されます。
プロパティ名 (item_title、item_url など) は、値/文字列を格納する必要があるテーブル列を知る方法であるため、重要です。
私はこの問題を理解しようとして困惑しており、どこに行けばよいのかよくわかりません。in_array または in_object を使用しようとしていますが、何か間違っているに違いありません。対応するプロパティ名が存在する場合は、それに基づいて変数を作成する必要があります。
何かご意見は?ありがとうございました!