#php curl 使って クリックなしで POST 送信

サンプルデータは配列

// 転送先
$url = "https://google.com";

// 転送用フォームデータ
$data = [
    'key1' => 'value1',
    'key2' => 'value2',
    'key3' => 'value3',
    'key4' => 'value4',
];

#Function

public function curlData($url,$data){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data'));

    if(! $result = curl_exec($ch) ){
       echo curl_error($ch);
    }

    curl_close($ch);
    return $result;
}

#curl_init()

cURL セッションを初期化する

説明

curl_init ([ string $url = NULL ] ) : resource

PHP リファレンス curl_init(opens new window)

#curl_setopt()

転送用オプション設定

説明

curl_setopt ( resource $ch , int $option , mixed $value ) : bool

#オプション

オプション設定値
CURLOPT_URL取得する URL
CURLOPT_CUSTOMREQUEST"GET"、 "POST"、"CONNECT" など
CURLOPT_POSTFIELDS送信するデータ
CURLOPT_RETURNTRANSFERTRUE を設定すると、curl_exec() の返り値を 文字列で返します。通常はデータを直接出力します。
CURLOPT_HTTPHEADERヘッダフィールドの配列 ['Content-type: text/plain', 'Content-length: 100']

CURLOPT_POSTFIELDS
PHP 5.5.0 以降、@ プレフィックスは非推奨

PHP リファレンス curl_setopt(opens new window)

#curl_exec()

指定した URL に data 送信

説明

curl_exec ( resource $ch ) : mixed

PHP リファレンス curl_exec(opens new window)

#curl_close()

システムリソースを解放

説明

curl_close ( resource $ch ) : void

PHP リファレンス curl_close(opens new window)

2018-04-30
  • php

関連記事

twig 3 人気 PHP テンプレートエンジンがバージョンアップ
allowurlinclude の設定で ftp_connect()エラー
Lumen と Laravel 違い比較
Laravel5.7 の MVC 使う時のメモ
php 開発におけるルール・規約
PHP 7.4 にアップグレードして使えなくなる機能
解決!phpMyAdmin テーブル構造の内容が表示されない問題
正規表現一覧 よく使う検索・置換のパターン
開発時によく使うゼロ埋めパディング作業まとめ
知ってるようで知らなかった composer のコマンドとオプションの世界
Laravel 5.1 から 8.1 にバージョンアップ
laravel vuejs 初期設定
HTML から PDF に変換 PHP ライブラリ mPDF の設定
nuxtjs と codeigniter で jwt システム構築
爆速・軽量フレームワーク codeigniter PHP 開発
Laravel Error についてのメモ