Rechercher une fonction PHP

Options de contexte des sockets

Options de contexte des socketsListe des options de contexte des sockets

Description

Les options de contexte des sockets sont disponibles pour tous les gestionnaires fonctionnant via les sockets, comme tcp, http et ftp.

Retour à la première page de Manuel PHP  Table des matières Haut

Options

bindto

Utilisé pour spécifier l'adresse IP (soit IPv4 ou IPv6), et/ou le numéro du port que PHP utilisera pour accéder au réseau. La syntaxe est ip:port pour les adresses IPv4, et [ip]:port pour les adresses IPv6. Le fait de définir l'IP ou le port à 0 permettra au système de choisir lui-même le port et/ou l'IP.

Note:

Vu que FTP crée 2 sockets de connexion lors d'une opération normale, le numéro du port ne peut être spécifié en utilisant cette option.

backlog

Utilisé pour limiter le nombre de connexions actives dans la liste d'attente du socket.

Note:

Ceci n'est applicable qu'à la fonction stream_socket_server().

ipv6_v6only

Substitue le système d'exploitation par défaut concernant le mappage d'IPv4 dans IPv6.

Note:

Ceci est important en particulier lorsque vous essayez d'écouter sur les adresses IPv4 séparément alors qu'il existe une liaison sur [::].

Ceci n'est applicable qu'à la fonction stream_socket_server().

so_reuseport

Permet plusieurs liaisons d'une même paire ip:port, même à partir de processus distinct.

Note:

Ceci n'est applicable qu'à la fonction stream_socket_server().

so_broadcast

Permet d'envoyer et de recevoir des données vers/à partir d'adresses de diffusion.

Note:

Ceci n'est applicable qu'à la fonction stream_socket_server().

tcp_nodelay

Mettre la valeur a TRUE définira SOL_TCP,NO_DELAY=1 correctement, ce qui désactivera l'algorithme TCP Nagle.

Retour à la première page de Manuel PHP  Table des matières Haut

Historique

Version Description
7.1.0 Ajout du paramètre tcp_nodelay.
7.0.1 Ajout du paramètre ipv6_v6only.
7.0.0 Ajout du paramètre so_broadcast.
7.0.0 Ajout du paramètre so_reuseport.
5.3.3 Ajout du paramètre backlog.
5.1.0 Ajout du paramètre bindto.

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple d'utilisation du paramètre bindto

<?php
// Connexion à Internet en utilisant l'IP '192.168.0.100'
$opts = array(
    
'socket' => array(
        
'bindto' => '192.168.0.100:0',
    ),
);


// Connexion à Internet en utilisant l'IP '192.168.0.100' et le port '7000'
$opts = array(
    
'socket' => array(
        
'bindto' => '192.168.0.100:7000',
    ),
);


// Connexion à Internet en utilisant l'adresse IPv6 '2001:db8::1'
// et le port '7000'
$opts = array(
    
'socket' => array(
        
'bindto' => '[2001:db8::1]:7000',
    ),
);



// Connexion à Internet en utilisant le port '7000'
$opts = array(
    
'socket' => array(
        
'bindto' => '0:7000',
    ),
);


// Création du contexte...
$context stream_context_create($opts);

// ...et l'utilise pour récupérer les données
echo file_get_contents('http://www.example.com'false$context);

?>

Rechercher une fonction PHP

Version en cache

21/11/2024 23:05:04 Cette version de la page est en cache (à la date du 21/11/2024 23:05:04) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-context.socket.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut