Heim  >  Artikel  >  Backend-Entwicklung  >  PHP implementiert ein Curl-Verbindungsbeispiel mit Wiederholungsfunktion

PHP implementiert ein Curl-Verbindungsbeispiel mit Wiederholungsfunktion

墨辰丷
墨辰丷Original
2018-06-01 16:11:131813Durchsuche

Dieser Artikel stellt hauptsächlich die Curl-Verbindungsmethode mit Wiederholungsfunktion in PHP vor und analysiert die Methode von PHP, mit der Curl wiederholte Verbindungen implementiert, und zwar in Form von Beispielen.

Die Details sind wie folgt:

/**
 * @param string  $url 访问链接
 * @param string $target 需要重试的标准: 返回结果中是否包含$target字符串
 * @param int $retry 重试次数, 默认3次
 * @param int $sleep 重试间隔时间, 默认1s
 * @return bool|mixed curl返回结果
 * desc 有重试功能的curlget
 */
function curlGetRetry($url, $target, $retry=3, $sleep = 1)
{
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
  curl_setopt($ch, CURLOPT_TIMEOUT, 5);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 信任任何证书
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1); // 检查证书中是否设置域名(为0也可以,就是连域名存在与否都不验证了)
  $output = curl_exec($ch);
  while((strpos($jsonOutput, $target) === FALSE) && $retry--){ //检查$targe是否存在
    sleep($sleep); //阻塞1s
    $output = curl_exec($ch);
  }
  curl_close($ch);
  return $output;
}

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, er kann für das Studium aller hilfreich sein.

Verwandte Empfehlungen:

phpBeispiele zur Schnittstellentechnik und ausführliche Erklärungen mit Bildern und Texten

PHPDetaillierte Erläuterung abstrakter Methoden und abstrakter Klasseninstanzen

Verwendung von statischen und const-Schlüsselwörtern in PHP

Das obige ist der detaillierte Inhalt vonPHP implementiert ein Curl-Verbindungsbeispiel mit Wiederholungsfunktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn