- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 PayPal 的经典 API,但我很难从 PHP 中的 curl_multi 获取结果。到目前为止我的代码是:
<?php
$mh = curl_multi_init();
include('../connect.php');
$sql = "SELECT * FROM transactions ORDER BY ID asc LIMIT 0,2";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)){
$rid = $row['ID'];
$tid = $row['transID'];
$sandbox = FALSE;
// Set PayPal API version and credentials.
$api_version = '85.0';
$api_endpoint = 'https://api-3t.paypal.com/nvp';
$api_username = 'MY_USER';
$api_password = 'MY_PASS';
$api_signature = 'API_SIGNATURE';
$request_params = array
(
'USER' => $api_username,
'PWD' => $api_password,
'SIGNATURE' => $api_signature,
'VERSION' => $api_version,
'METHOD' => 'GetTransactionDetails',
'TRANSACTIONID' => $tid
);
$nvp_string = '';
foreach($request_params as $var=>$val)
{
$nvp_string .= '&'.$var.'='.urlencode($val);
}
${'ch_' . $i} = curl_init();
curl_setopt(${'ch_' . $i}, CURLOPT_VERBOSE, 1);
curl_setopt(${'ch_' . $i}, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt(${'ch_' . $i}, CURLOPT_TIMEOUT, 30);
curl_setopt(${'ch_' . $i}, CURLOPT_URL, $api_endpoint);
curl_setopt(${'ch_' . $i}, CURLOPT_RETURNTRANSFER, 1);
curl_setopt(${'ch_' . $i}, CURLOPT_POSTFIELDS, $nvp_string);
curl_multi_add_handle($mh, ${'ch_'.$i});
$i++;
}
}
include('../close.php');
$running = null;
do {
curl_multi_exec($mh, $running);
} while ($running);
?>
这是成功执行的,通过注释掉 CURLOPT_RETURNTRANSFER 行来验证。我无法解决的是如何将返回的数据放入每条记录的数组中。我试过:
$result = curl_multi_exec($mh, $running);
print_r($result);
这会返回一大堆 0 和 1,但不是我需要的详细信息。
有人可以帮忙吗?我的脑子快要爆炸了……
最佳答案
通过将 ${'ch_'.$i}
更改为数组 $ch[$i]
然后使用 curl_multi_getcontent
循环遍历数组来解决它,如下所示:
foreach ($ch as $a)
{
$result = curl_multi_getcontent($a);
parse_str($result, $arr);
print_r($arr);
echo "--------------------------------------------------\n";
}
这让我得到数组 $arr
中的数据。例如,$arr['EMAIL'];
另见:Curl Multi and Return Transfer 和 understanding php curl_multi_exec。
关于PHP curl_multi_exec 输出到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24324106/
我不明白 PHP cURL 函数 curl_multi_exec()。 int curl_multi_exec(handle h, int running) 我浏览了 PHP 手册 http://ww
我正在使用 PayPal 的经典 API,但我很难从 PHP 中的 curl_multi 获取结果。到目前为止我的代码是: $api_username, 'PWD' => $api_password
只是好奇 PHP 中的 curl_multi_exec() 调用是阻塞调用还是非阻塞调用。 最佳答案 射击答案:curl_multi_exec() 是非阻塞 更长的答案:curl_multi_exec
我需要从 PHP 脚本调用网络服务。 Web 服务很慢,我对其响应不感兴趣,我只想向它发送数据。 我正在尝试使用 curl_multi_exec(下面是一个示例:http://www.jaisenma
我正在尝试理解 curl_multi_exec。我在这里复制了一部分手册示例。所以我想知道,它是如何工作的?我猜第一个循环发送 http 请求?但它随后是一个循环内的循环,使用带有看似未记录的标志的函
我构建了一个 curl 类,可以使用 curl_multi_init 并行下载图像。 下载功能如下 public function download(AbstractRequest $request,
我编写了一个类,以便更轻松地使用多 cURL 请求 我想在收到 404 错误或任何其他错误时记录错误。我已经将 CURLOPT_FAILONERROR 设置为 true。 我目前正在使用 curl_m
如标题所述,我的问题非常简单。但是我再次改写。 我想使用 php-curl 下载多个站点。我将从控制台运行它。我要使用 curl_multi_exec下载所有网站。现在的问题是,curl 会为每个请求
我的队列工作人员不断抛出以下错误: [Elasticsearch\Common\Exceptions\RuntimeException] curl_multi_exec() function
我需要对 uClassify 情绪分类器进行多次 API 调用,以获取大量推文的情绪。由于我有很多推文需要索引,仅使用 cURL 是不够的(完全索引大约 228 条推文需要将近 2 分钟)。 如果没有
我已经实现了一个 PHP 函数,它使用 PHP curl_multi_init() 方法检查和下载大量图像(> 1'000)- 使用数组传递给它。 在修改了几次之后,因为我得到了诸如 0 字节文件之类
目前,如果它连接到的一个 url 不起作用,我的 cURL multi exec 就会停止,所以有几个问题: 1:为什么会停止?这对我来说没有意义。 2:如何让它继续? 编辑:这是我的代码:
这是在我们的脚本中使用 curl 的循环。它导致 CPU 使用率飙升至 100%。一位 friend 说:“你的计算机在这里循环得太快了,它没有时间处理请求,因为它一直在检查完成。”...所以我的问题
我是一名优秀的程序员,十分优秀!