ループ内のcurlを使用して、配列にリクエストを送信して応答を格納する方法は100回ですか?100回ループでcurl PHPを使用するには?
たとえば、curlが最初にループで使用し、500レコードを取得して配列に格納し、2番目のループで同じプロセスを実行し、500レコードを応答して問題なく同じ配列に格納します。最後に、配列に50K個のレコードを格納する必要があり、データベースにレコードを挿入するために使用します。
私は最後の2日間働いていますが、これについては何の解決策も得られませんので、私を助けてください。
<?php
$final_data = array();
for($d=1;$d<=100;$d++)
{
$data = '{"request": {"header": {"username": "xxx","password": "xxx"},
"body": {
"shapes": [],
"size_to": "",
"size_from": "",
"color_from": "",
"color_to": "",
"clarity_from": "",
"clarity_to": "",
"cut_from": "",
"cut_to": "",
"polish_from": "",
"polish_to": "",
"symmetry_from": "",
"symmetry_to": "",
"labs": [],
"price_total_from": "",
"price_total_to": "",
"page_number": "1",
"page_size": "50",
"sort_by": "price",
"sort_direction": "ASC"
}}}';
$json = json_decode($data,true);
$json['request']['body']['page_number'] = $d;
$data = json_encode($json);
$curl = curl_init();
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_URL, 'http://technet.rapaport.com/HTTP/JSON/RetailFeed/GetDiamonds.aspx');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
$dd = json_decode($result,true);
foreach($dd['response']['body']['diamonds'] as $key)
{
array_push($final_data,$key);
}
curl_close($curl);
}
?>
ブラウザのクラッシュはどのようにサーバー側のコードと関係がありますか?あなたはまた、あなたがやっていることを理解するために、より多くの詳細、コードなどを与える必要があります。 –
これにはどのくらいの時間がかかりますか?サーバーサイドのプロセスが完了するまでブラウザは数分待たされません。クライアントは、おそらく "Oops、time out"などのように見えます。 – Bobby
私の無効な質問を申し訳ありません。既に私の質問を更新しました。 –