PHP 7.4.0 alpha 3 Released

curl_multi_setopt

(PHP 5 >= 5.5.0, PHP 7)

curl_multi_setoptDéfinit une option pour le gestionnaire multiple cURL

Description

curl_multi_setopt ( resource $mh , int $option , mixed $value ) : bool

Avertissement

Cette fonction est actuellement non documentée ; seule la liste des arguments est disponible.

Liste de paramètres

mh

option

Une des constantes CURLMOPT_*.

value

La valeur à définir pour le paramètre option.

value doit être un int pour les valeurs suivantes du paramètres option :

Option Définit le paramètre value à
CURLMOPT_PIPELINING 1 pour activer, 0 pour désactiver. L'activation du pipelining sur un gestionnaire multiple va faire qu'il va tenter de réaliser un pipelining HTTP autant que possible pour les transferts utilisant ce gestionnaire. Cela signifie que, si vous ajouter un second gestionnaire qui peut utiliser une connexion exis À partir de cURL 7.43.0, la valeur est un masque de bit, et il est possible de passer 2 pour tenter de multiplex le nouveau transfert via une connexion HTTP/2 existante si possible. Passer 3 ordonne à cURL de demander pour le pipelining et le multiplexing indépendant l'un de l'autre. À partir de cURL 7.62.0, définir le bit de pipelining n'a aucun effet. Au lieu d'entier litérals, les constantes CURLPIPE_* peuvent être utilisé si disponible.
CURLMOPT_MAXCONNECTS Nombre maximal de connexions ouvertes simultanément que libcurl peut mettre en cache. Par défaut, la taille sera élargit pour rentrer quatre fois le nombre de gestionnaires ajouté grâce à curl_multi_add_handle(). Lorsque le cache est complet, curl ferme la plus ancienne connexion du cache, afin d'éviter que le nombre de connexions ouvertes n'augmente.
CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE Passe un nombre qui définit le seuil de la longeur des tranches pour le pipelining en octets.
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE Passe un nombre qui définit le seuil de la taille pour les pénalités de pipelining en octets.
CURLMOPT_MAX_HOST_CONNECTIONS Passe un nombre qui définit le nombre maximal de connexion à un hôte unique.
CURLMOPT_MAX_PIPELINE_LENGTH Passe un nombre qui définit le nombre maximal de requête dans une pipeline.
CURLMOPT_MAX_TOTAL_CONNECTIONS Passe un nombre qui définit le nombre maximal de connexions simultanées ouvertes.
CURLMOPT_PUSHFUNCTION Passe un fonction de rappel qui sera déclaré pour gérer les pushs serveurs et devrait avoir la signature suivante :
pushfunction ( resource $parent_ch , resource $pushed_ch , array $headers ) : int
parent_ch

Le gestionnaire cURL parent (la requête que le client a faite).

pushed_ch

Un nouveau gestionnaire cURL pour les requêtes pushé.

headers

Les en-têtes de promise de push.

La fonction de push est supposé de retourner soit CURL_PUSH_OK si il peut gérer le push, ou CURL_PUSH_DENY pour le rejeter.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Historique

Version Description
7.1.0 Ajout de CURLMOPT_PUSHFUNCTION.
7.0.7 Ajout de CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, CURLMOPT_MAX_HOST_CONNECTIONS, CURLMOPT_MAX_PIPELINE_LENGTH et CURLMOPT_MAX_TOTAL_CONNECTIONS.

add a note add a note

User Contributed Notes 1 note

up
1
ryosuke_i_628 at yahoo dot co dot jp
3 years ago
If you want to enable both HTTP/1.1 pipelining and HTTP/2 multiplexing...

<?php
curl_multi_setopt
($mh, CURLMOPT_PIPELINING, 3);
?>

or

<?php
curl_multi_setopt
($mh, CURLMOPT_PIPELINING, CURLPIPE_HTTP1 | CURLPIPE_MULTIPLEX);
?>
To Top