PHPのcURLとは何ですか?


220

PHPでは、多くのPHPプロジェクトでcURLという単語を使用しています。それは何ですか?どのように機能しますか?

参照リンク:cURL



1
以下の2つのリンクを確認してください。cURLの理解に役立つと思います。phpsense.com/2007/php-curl-functions blog.unitedheroes.net/curl
Dhaval

回答:


245

cURLは、PHPでHTTPリクエストを行うためのライブラリです。あなたがそれについて知る必要があるすべてのもの(そして他のほとんどの拡張機能)はPHPマニュアルにあります

PHPのcURL関数を使用するには、»libcurlパッケージをインストールする必要があります。PHPでは、libcurl 7.0.2-beta以降を使用する必要があります。PHP 4.2.3では、libcurlバージョン7.9.0以降が必要です。PHP 4.3.0以降では、7.9.8以降のlibcurlバージョンが必要です。PHP 5.0.0には、libcurlバージョン7.10.5以降が必要です。

cURLがなくてもHTTPリクエストを行うことができallow_url_fopenますが、php.iniファイルで有効にする必要があります。

// Make a HTTP GET request and print it (requires allow_url_fopen to be enabled)
print file_get_contents('http://www.example.com/');

1
@ Johannes、cURLなしでHTTP投稿リクエストは可能ですか?
Pacerier 2013

2
つまり、サーバーで 'allow_url_fopen'が有効になっていない場合、file_get_contents()関数を使用できませんでしたが、その場合、同じ目的でcurl関数を使用できますか?私は正しいですか?
ARUN、2014

3
@Arunはい、「allow_url_fopen」が有効になっていない場合は、file_get_contents()funcの代わりにcurlを同じタスクに使用できます。Curlを使用すると、file_get_contents()が提供しないPOSTデータ、Cookieなどのオプションをさらに設定できます。
Dinesh Nagar

157

cURLは、コードからURLをヒットして、HTML応答を取得する方法です。cURLは、他のURLに接続してコードでそれらの応答を使用できるクライアントURLを意味します。


3
JavaScriptでは、コードでajaxを実行するのと同じです。PHPではさまざまなことを同期的に行いますが、Javascriptでは非同期的に行います。
Faris Rayhan 2017年

68

PHPのCURL:

概要:

curl_execPHP のコマンドは、curlコンソールから使用するためのブリッジです。curl_execを使用すると、GET / POSTリクエストをすばやく簡単に実行したり、JSONなどの他のサーバーから応答を受信したり、ファイルをダウンロードしたりすることが簡単になります。

警告、危険:

curlインターネットの外からデータを取得することがすべてであるので、不適切に使用した場合、悪で危険です。誰かがあなたのカールと他のサーバーの間を行き来して、rm -rf /あなたの応答にa を注入することができます、そしてなぜ私はコンソールに落ちてそしてls -lもう働かないのですか?カールの危険な力を過小評価していたからです。自分のサーバーと通信している場合でも、curlから返されるものを安全であると信頼しないでください。マルウェアを引き戻して、その愚か者の富を解放することができます。

例:

これらはUbuntu 12.10で行われました

  1. コマンドラインからの基本的なカール:

    el@apollo:/home/el$ curl http://i.imgur.com/4rBHtSm.gif > mycat.gif
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  492k  100  492k    0     0  1077k      0 --:--:-- --:--:-- --:--:-- 1240k

    次に、FirefoxでGIFを開くことができます。

    firefox mycat.gif

    輝かしい猫がトキソプラズマ原虫を進化させて女性に猫を飼い続けさせ、男性にも同様に女性を飼わせています。

  2. cURLの例では、google.comをヒットするリクエストを取得し、コマンドラインにエコーしています。

    これは、phpshターミナルを介して行われます。

    php> $ch = curl_init();
    
    php> curl_setopt($ch, CURLOPT_URL, 'http://www.google.com');
    
    php> curl_exec($ch);

    圧縮されたhtmlとjavascript(googleから)の混乱を印刷してコンソールにダンプします。

  3. cURLの例では、応答テキストを変数に入れています。

    これは、phpshターミナルを介して行われます。

    php> $ch = curl_init();
    
    php> curl_setopt($ch, CURLOPT_URL, 'http://i.imgur.com/wtQ6yZR.gif');
    
    php> curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    
    php> $contents = curl_exec($ch);
    
    php> echo $contents;

    変数には、猫のアニメーションGIFであるバイナリが含まれています。可能性は無限です。

  4. PHPファイル内からcurlを実行します。

    このコードをmyphp.phpというファイルに入れます。

    <?php
      $curl_handle=curl_init();
      curl_setopt($curl_handle,CURLOPT_URL,'http://www.google.com');
      curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
      curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
      $buffer = curl_exec($curl_handle);
      curl_close($curl_handle);
      if (empty($buffer)){
          print "Nothing returned from url.<p>";
      }
      else{
          print $buffer;
      }
    ?>

    次に、コマンドラインで実行します。

    php < myphp.php

    myphp.phpを実行し、phpインタープリターを介してこれらのコマンドを実行し、厄介なhtmlとjavascriptを大量に画面にダンプしました。

    curlを使用しGETPOST要求を行うことができます。ここで定義されているパラメーターを指定するだけです。curlを使用したHTTPジョブの自動化

危険のリマインダー:

curlの出力を注意深くダンプしてください。いずれかが解釈されて実行されると、ボックスが所有され、クレジットカード情報がサードパーティに販売され、アラバマ州の1人床の会社から不思議な$ 900の請求を受けます。海外のクレジットカード詐欺犯罪リングのフロント。


2
ここで言及した「危険」をバックアップするリンクを提供できますか?
floatingLomas

1
@floatingLomas Ericが説明しようとしているのは、ユーザーが提供するすべてのコンテンツに存在する問題です。誰も信用することはできません。ユーザー提供のコンテンツと同様に、単純なMITMを使用してcURLを悪用し、悪意のあるコードをアプリケーションに挿入することが可能です。もちろん、これは、Ericが正しく述べたように「解釈および実行」された場合にのみ問題になります。eval is evilを検索するだけで、セキュリティリスクの可能性が多数見つかります(例:stackoverflow.com/questions/951373/when-is-eval-evil-in-php
Fabio Poloni

7
@floatingLomas ...また、エリックは、アラバマ州のワンマンフローリング会社に900ドルを請求するという妄想を抱いているようです。
Fabio Poloni 2016年

iframe以外の方法はありますか?
ジェニファーミシェル

1
彼らがあなたにフローリングを売ることに本当に外に出ているなら、それは妄想ではありません。
piersb 2017年

24

cURLは、コードからURLをヒットしてHTML応答を取得する方法です。PHP言語からのコマンドラインcURLに使用されます。

<?php
// Step 1
$cSession = curl_init(); 
// Step 2
curl_setopt($cSession,CURLOPT_URL,"http://www.google.com/search?q=curl");
curl_setopt($cSession,CURLOPT_RETURNTRANSFER,true);
curl_setopt($cSession,CURLOPT_HEADER, false); 
// Step 3
$result=curl_exec($cSession);
// Step 4
curl_close($cSession);
// Step 5
echo $result;
?> 

手順1:を使用してcurlセッションを初期化しcurl_init()ます。

ステップ2:のオプションを設定しますCURLOPT_URL。この値は、リクエストの送信先のURLです。curlパラメータを使用して検索用語を追加しますq=。のオプションを設定しますCURLOPT_RETURNTRANSFER。Trueを指定すると、curlは文字列を出力する代わりに返すように指示します。オプションをCURLOPT_HEADERに設定します。falseの場合、curlは戻り値のヘッダーを無視します。

手順3:を使用してcurlセッションを実行しcurl_exec()ます。

ステップ4:作成したcurlセッションを閉じます。

ステップ5:戻り文字列を出力します。

public function curlCall($apiurl, $auth, $rflag)
{
    $ch = curl_init($apiurl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    if($auth == 'auth') { 
        curl_setopt($ch, CURLOPT_USERPWD, "passw:passw");
    } else {
        curl_setopt($ch, CURLOPT_USERPWD, "ss:ss1");
    }
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $dt = curl_exec($ch);        
    curl_close($ch);
    if($rflag != 1) {
        $dt = json_decode($dt,true);        
    }
    return $dt;
}

これは認証にも使用されます。認証用のユーザー名とパスワードを設定することもできます。

その他の機能については、ユーザーマニュアルまたは次のチュートリアルを参照してください。

http://php.net/manual/en/ref.curl.php
http://www.startutorial.com/articles/view/php-curl


16

まず、curl、libcurl、PHP / cURLの概念を理解しましょう。

  1. curl:URL構文を使用してファイルを取得または送信するためのコマンドラインツール。

  2. libcurl:Daniel Stenbergによって作成されたライブラリ。これにより、さまざまなタイプのプロトコルを使用して、さまざまなタイプのサーバーに接続および通信できます。libcurlは現在、http、https、ftp、gopher、telnet、dict、file、およびldapプロトコルをサポートしています。libcurlは、HTTPS証明書、HTTP POST、HTTP PUT、FTPアップロード(これもPHPのftp拡張で実行できます)、HTTPフォームベースのアップロード、プロキシ、Cookie、およびユーザー+パスワード認証をサポートしています。

  3. PHP / cURL:PHPプログラムがlibcurlを使用できるようにするPHP用モジュール。

どうやって使うのですか:

step1:curlセッションを初期化するには、curl_init()を使用します。

step2:CURLOPT_URLのオプションを設定します。この値は、リクエストの送信先のURLです。パラメータ「q = "を使用して検索用語「curl」を追加します。オプションCURLOPT_RETURNTRANSFERを設定します。trueは、curlに文字列を出力する代わりに返すように指示します。CURLOPT_HEADERのオプションを設定します。falseの場合、curlは戻り値のヘッダーを無視します。

step3:curl_exec()を使用してcurlセッションを実行します。

step4:作成したcurlセッションを閉じます。

step5:戻り文字列を出力します。

デモを作る

2つのPHPファイルを作成し、WebサーバーがPHPファイルを提供できるフォルダーにそれらを配置する必要があります。私の場合、簡単にするために/ var / www /に入れました。

1. helloservice.phpおよび2. demo.php

helloservice.phpは非常にシンプルで、基本的に取得したデータをエコーバックします。

<?php
  // Here is the data we will be sending to the service
  $some_data = array(
    'message' => 'Hello World', 
    'name' => 'Anand'
  );  

  $curl = curl_init();
  // You can also set the URL you want to communicate with by doing this:
  // $curl = curl_init('http://localhost/echoservice');

  // We POST the data
  curl_setopt($curl, CURLOPT_POST, 1);
  // Set the url path we want to call
  curl_setopt($curl, CURLOPT_URL, 'http://localhost/demo.php');  
  // Make it so the data coming back is put into a string
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  // Insert the data
  curl_setopt($curl, CURLOPT_POSTFIELDS, $some_data);

  // You can also bunch the above commands into an array if you choose using: curl_setopt_array

  // Send the request
  $result = curl_exec($curl);

  // Get some cURL session information back
  $info = curl_getinfo($curl);  
  echo 'content type: ' . $info['content_type'] . '<br />';
  echo 'http code: ' . $info['http_code'] . '<br />';

  // Free up the resources $curl is using
  curl_close($curl);

  echo $result;
?>

2.demo.phpページで、結果を確認できます。

<?php 
   print_r($_POST);
   //content type: text/html; charset=UTF-8
   //http code: 200
   //Array ( [message] => Hello World [name] => Anand )
?>

こんにちは、ページ1について教えてください。using-curl.php
Kaveh

@カベ:申し訳ありませんが、2ページ目を忘れてしまいました。回答を更新しました。今チェックしてください。
Anand Pandey

12

PHPのcURL拡張機能は、PHPスクリプト内からさまざまなWebリソースを使用できるように設計されています。



7

カール

  • cURLは、コードからURLをヒットしてHTML応答を取得する方法です。
  • PHP言語からのコマンドラインcURLに使用されます。
  • cURLは、PHPでHTTPリクエストを行うためのライブラリです。

PHPは、Daniel Stenbergによって作成されたライブラリであるlibcurlをサポートしています。これにより、さまざまな種類のプロトコルを使用して、さまざまな種類のサーバーに接続し、通信することができます。libcurlは現在、http、https、ftp、gopher、telnet、dict、file、およびldapプロトコルをサポートしています。libcurlは、HTTPS証明書、HTTP POST、HTTP PUT、FTPアップロード(これもPHPのftp拡張で実行できます)、HTTPフォームベースのアップロード、プロキシ、Cookie、およびユーザー+パスワード認証をサポートしています。

PHPをcURLサポート付きでコンパイルしたら、cURL関数の使用を開始できます。cURL関数の背後にある基本的な考え方は、curl_init()を使用してcURLセッションを初期化し、curl_setopt()を使用して転送のすべてのオプションを設定し、curl_exec()でセッションを実行して、 curl_close()を使用してセッションを終了します。

サンプルコード

// error reporting
error_reporting(E_ALL);
ini_set("display_errors", 1);

//setting url
$url = 'http://example.com/api';

//data
$data = array("message" => "Hello World!!!");

try {
    $ch = curl_init($url);
    $data_string = json_encode($data);

    if (FALSE === $ch)
        throw new Exception('failed to initialize');

        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($data_string)));
        curl_setopt($ch, CURLOPT_TIMEOUT, 5);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);

        $output = curl_exec($ch);

    if (FALSE === $output)
        throw new Exception(curl_error($ch), curl_errno($ch));

    // ...process $output now
} catch(Exception $e) {

    trigger_error(sprintf(
        'Curl failed with error #%d: %s',
        $e->getCode(), $e->getMessage()),
        E_USER_ERROR);
}

詳細については、確認してください-


1

Curlは、主にLinux / Unixコマンドラインツール用に記述された通常のcurlコマンドとライブラリの動作を継承するPHPの拡張にすぎません

カールとは? cURLはクライアントURLを表します。cURLは、任意のURLにデータを送信するために使用されます。curlの詳細については、CURL Webサイトをご覧ください。

PHPのcURL同じ概念がPHPに導入され、HTTPやFTPなどの異なるプロトコルを介して、アクセス可能なURLにデータを送信します。詳細については、PHP Curlチュートリアルを参照してください。


1

PHPカール関数(POST、GET、DELETE、PUT)

function curl($post = array(), $url, $token = '', $method = "POST", $json = false, $ssl = true){
    $ch = curl_init();  
    curl_setopt($ch, CURLOPT_URL, $url);    
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
    if($method == 'POST'){
        curl_setopt($ch, CURLOPT_POST, 1);
    }
    if($json == true){
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json','Authorization: Bearer '.$token,'Content-Length: ' . strlen($post)));
    }else{
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
    }
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSLVERSION, 6);
    if($ssl == false){
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    }
    // curl_setopt($ch, CURLOPT_HEADER, 0);     
    $r = curl_exec($ch);    
    if (curl_error($ch)) {
        $statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        $err = curl_error($ch);
        print_r('Error: ' . $err . ' Status: ' . $statusCode);
        // Add error
        $this->error = $err;
    }
    curl_close($ch);
    return $r;
}

0

PHPカールクラス(GET、POST、FILES UPLOAD、SESSIONS、SEND POST JSON、FORCE SELFSIGNED SSL / TLS):

<?php
    // Php curl class
    class Curl {

        public $error;

        function __construct() {}

        function Get($url = "http://hostname.x/api.php?q=jabadoo&txt=gin", $forceSsl = false,$cookie = "", $session = true){
            // $url = $url . "?". http_build_query($data);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HEADER, false);        
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){            
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            $info = curl_getinfo($ch);
            $res = curl_exec($ch);        
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            }        
        }

        function GetArray($url = "http://hostname.x/api.php", $data = array("name" => "Max", "age" => "36"), $forceSsl = false, $cookie = "", $session = true){
            $url = $url . "?". http_build_query($data);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HEADER, false);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            $info = curl_getinfo($ch);
            $res = curl_exec($ch);        
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            }        
        }

        function PostJson($url = "http://hostname.x/api.php", $data = array("name" => "Max", "age" => "36"), $forceSsl = false, $cookie = "", $session = true){
            $data = json_encode($data);
            $ch = curl_init($url);                                                                      
            curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);                                                                  
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                'Authorization: Bearer helo29dasd8asd6asnav7ffa',                                                      
                'Content-Type: application/json',                                                                                
                'Content-Length: ' . strlen($data))                                                                       
            );        
            $res = curl_exec($ch);
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            } 
        }

        function Post($url = "http://hostname.x/api.php", $data = array("name" => "Max", "age" => "36"), $files = array('ads/ads0.jpg', 'ads/ads1.jpg'), $forceSsl = false, $cookie = "", $session = true){
            foreach ($files as $k => $v) {
                $f = realpath($v);
                if(file_exists($f)){
                    $fc = new CurlFile($f, mime_content_type($f), basename($f)); 
                    $data["file[".$k."]"] = $fc;
                }
            }
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");        
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);    
            curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false); // !!!! required as of PHP 5.6.0 for files !!!
            curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)");
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            $res = curl_exec($ch);
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            } 
        }
    }
?>

例:

<?php
    $urlget = "http://hostname.x/api.php?id=123&user=bax";
    $url = "http://hostname.x/api.php";
    $data = array("name" => "Max", "age" => "36");
    $files = array('ads/ads0.jpg', 'ads/ads1.jpg');

    $curl = new Curl();
    echo $curl->Get($urlget, true, "token=12345");
    echo $curl->GetArray($url, $data, true);
    echo $curl->Post($url, $data, $files, true);
    echo $curl->PostJson($url, $data, true);
?>

PHPファイル:api.php

<?php
    /*
    $Cookie = session_get_cookie_params();
    print_r($Cookie);
    */
    session_set_cookie_params(9000, '/', 'hostname.x', isset($_SERVER["HTTPS"]), true);
    session_start();

    $_SESSION['cnt']++;
    echo "Session count: " . $_SESSION['cnt']. "\r\n";
    echo $json = file_get_contents('php://input');
    $arr = json_decode($json, true);
    echo "<pre>";
    if(!empty($json)){ print_r($arr); }
    if(!empty($_GET)){ print_r($_GET); }
    if(!empty($_POST)){ print_r($_POST); }
    if(!empty($_FILES)){ print_r($_FILES); }
    // request headers
    print_r(getallheaders());
    print_r(apache_response_headers());
    // Fetch a list of headers to be sent.
    // print_r(headers_list());
?>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.