在 php 脚本中执行 curl 命令并从服务器获取响应并提取它
Posted
技术标签:
【中文标题】在 php 脚本中执行 curl 命令并从服务器获取响应并提取它【英文标题】:execute curl command inside php script and get response from server and extract it 【发布时间】:2014-01-14 06:14:06 【问题描述】:我想验证 android paypal 支付的证明 为此,我想执行这段代码:
curl https://svcs.sandbox.paypal.com/AdaptivePayments/PaymentDetails \
-H "X-PAYPAL-SECURITY-USERID: user_id" \
-H "X-PAYPAL-SECURITY-PASSWORD: password" \
-H "X-PAYPAL-SECURITY-SIGNATURE: signature" \
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV" \
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV" \
-H "X-PAYPAL-APPLICATION-ID: APP-91B933855X481767M" \
-d "payKey=AP-70M68096ML426802W&requestEnvelope.errorLanguage=en_US"
由于我只是 php 的初学者,如何在 php 脚本中运行此命令并收到响应
你能把我链接到一些例子吗
谢谢
【问题讨论】:
【参考方案1】:$http_header = array(
"X-PAYPAL-SECURITY-USERID: user_id",
"X-PAYPAL-SECURITY-PASSWORD: password",
"X-PAYPAL-SECURITY-SIGNATURE: signature",
"X-PAYPAL-REQUEST-DATA-FORMAT: NV",
"X-PAYPAL-RESPONSE-DATA-FORMAT: NV",
"X-PAYPAL-APPLICATION-ID: APP-91B933855X481767M"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://svcs.sandbox.paypal.com/AdaptivePayments/PaymentDetails");
curl_setopt($ch, CURLOPT_HTTPHEADER, $http_header );
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, "payKey=AP-70M68096ML426802W&requestEnvelope.errorLanguage=en_US");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true);
$html = curl_exec ($ch);
echo $html;
【讨论】:
谢谢它有效,但我有这个错误:注意:curl_setopt(): CURLOPT_SSL_VERIFYHOST 不再接受值 1,将在此行中使用值 2:curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, true );以上是关于在 php 脚本中执行 curl 命令并从服务器获取响应并提取它的主要内容,如果未能解决你的问题,请参考以下文章
centos根据php的curl请求post过来的参数执行对应的sh脚本
在 PHP 中使用 curl 访问 REST API 时出现错误 401