ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

PHP:画面遷移せずGETでデータを渡して処理を行うために、cURL関数を使いました

3年以上前に、POSTでデータを渡すための方法を書いていました。
ajya.hatenablog.jp

POSTで使えたのだから、GETでも使えるでしょうと考えて試したところ、使えました。

cURL関数のGETでの利用方法

以下のようにして、利用できました。

// 初期化
$curl = curl_init();

// URLを設定
curl_setopt($curl, CURLOPT_URL, "http://www.example.com/?no=ABC");
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');

// 戻り値の取得方法の設定
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

// 実行
$response = curl_exec($curl);

// 終了
curl_close($curl);

// 処理結果判定
if ((string)$response == "1") {
    // 正常時処理
} else {
    // 異常時処理
}

f:id:AJYA:20190327123725p:plain
unsplash-logoNESA by Makers

登録完了画面に遷移する際に、別のURLでの処理をGETで呼び出したかったので、

  • 登録完了処理が終わり、画面が表示される際にAjaxで呼び出す。
  • 登録完了処理の最後で、cURL関数で呼び出す。

のどちらかでできると考えました。
先にcURLで行う方法を試してできたので、実装を楽に済ませられました。