私は、セキュアなサービス(支払いトランザクションゲートウェイ)に接続し、いくつかのフィールド($ postData)を渡し、応答($ returnValue)を受け取る次のコードブロックを持っています。curl_execコールからのPOSTデータの解析
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://secure.service.com/data');
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
if ($returnValue = curl_exec($ch))
{
$error = curl_error($ch);
}
私は$のreturnValueの内容を表示すると、以下のように...彼らは示しています
HTTP/1.0 200 OK承認日:水曜日、2011年8月10日9時24分15秒GMT 接続:クローズコンテンツタイプ:application/x-www-form-urlencodedで のContent-Length:182 avs_code = X & cvv2_code = P & STATUS_CODE = 1つの&プロセッサ= TEST & auth_code = 999999 & settle_amount = 2000 & settle_通貨= USD & TRANS_ID = 120741127516 & auth_msg = TEST + APPROVED & auth_date = 2011-08-10 + 09:24:15
は、方法又はその構成部分に離れこの結果文字列を破壊CURLコールがあります?それとも自分が書くべきものなのでしょうか?私は、応答コード(200)、承認/拒否部分(承認済み)、およびクエリ文字列(avs_code ....)を取得する必要があります。私はcurl_getinfoを調べてみましたが、それはHTTP応答コードを取得するだけで、承認/拒否やクエリ文字列値を取得することはありません。
私はPHPの初心者ですので、明白なメソッド呼び出しやCURLパラメータがない場合は教えてください。
私はあなたがまだそのsubstrスプリットの後にそれらのvarsの1つのhttp応答仕様に従ってそれらを分離する\ r \ n \ r \ nを持っていると思います。このようにするときは、おそらくそれらを取り除きたいと思うでしょう。 –