これの作り方がわかりません。XML Api サーバーがあり、cURL でコンテンツを取得しています。それは正常に動作します。今、私はcreditCardPreprocessors
国に電話しなければなりません。「進行中」の状態もあり、PHP は進行が完了するまで待機する必要があります。睡眠などはすでに試しましたが、うまくいきません。これは、私が試したことの簡単な例です。
function process_state($xml){
if($result = request($xml)){
// It'll return NULL on bad state for example
return $result;
}
sleep(3);
process_state($xml);
}
これは無限ループになる可能性がありますが、5 に達した場合に終了するようにカウントを追加しようとしました。終了せず、サーバーがハングアップし、数分間 500 エラーが発生し、その vhost で Apache に到達できなくなります。
編集:
もう一つの例
$i = 0;
$card_state = false;
// We're gona assume now the request() turns back NULL if card state is processing TRUE if it's done
while(!$card_state && $i < 10){
$i++;
if($result = request('XML STUFF')){
$card_state = $result;
break;
}
sleep(2);
}