あじちゃんのブログ。備忘録。

〜SEもOLなんですかね?

APIから取得した値を配列に突っ込むまで

APIからの値の取得(GuzzleHttpをつかう)

<?php
namespace App;
use GuzzleHttp\Client;

class API
{
    static function getData () 
    {
        $base_url = "APIのURL";
        $path     = "API目的のPATH";
        $client   = new GuzzleHttp\Client(['base_uri' => $base_url,]);
        //接続
        $response = $client->request( 'GET', $path, []);
        $response_contents  =   $response->getBody()->getcontents();
        
        echo $response_contents;
    }
}

jsonを配列へ変換し加工する

<?php

$response_contents = file_get_contents('out/response.json');

//エンコーディング確認
echo mb_detect_encoding($response_contents).PHP_EOL;

//response_contentsを配列に変換
$returnDatas = json_decode($response_contents, true);

//返却用加工データ
$show = [];

try{
    //各種情報を配列に格納
    for($i = 0; $i < count($returnDatas['data']); $i++){
        $data = array(
            'programId'=>$returnDatas['data'][$i]['id'],    //ID
            'title'=>$returnDatas['data'][$i]['title'],     //タイトル
        );
        array_push($show,$data);
    }
}
catch(Exception $e){
    echo '$e->getmessage()>>>'.PHP_EOL;
    echo $e->getmessage();
    echo '<<<$e->getmessage()'.PHP_EOL;
    echo PHP_EOL;
}


echo '最終結果>>>'.PHP_EOL;
echo print_r($show).PHP_EOL;
echo '<<<最終結果'.PHP_EOL;