Rechercher une fonction PHP

stream_socket_recvfrom

(PHP 5, PHP 7)

stream_socket_recvfromLit des données depuis un socket, connecté ou pas

Description

string stream_socket_recvfrom ( resource $socket , int $length [, int $flags = 0 [, string &$address ]] )

stream_socket_recvfrom() accepte les données depuis un socket distant, jusqu'à un total de length octets.

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

Liste de paramètres

socket

Le socket distant.

length

Le nombre d'octets à recevoir de socket.

flags

La valeur de flags peut être la combinaison des constantes suivantes :

Valeurs possibles pour flags
STREAM_OOB Traite les données en mode OOB (out-of-band).
STREAM_PEEK Lit des données depuis le socket, mais n'utilise pas le buffer. Les prochains appels à fread() ou stream_socket_recvfrom() liront les mêmes données.

address

Si le paramètre address est fourni, il recevra l'adresse du socket distant.

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

Valeurs de retour

Retourne les données lues, sous forme de chaîne de caractères

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

Exemples

Exemple #1 Exemple avec stream_socket_recvfrom()

<?php
/* Ouvre un socket sur le port 1234 de localhost */
$server stream_socket_server('tcp://127.0.0.1:1234');

/* Accepte une connexion */
$socket stream_socket_accept($server);

/* Lit un paquet (1500 est la taille classique MTU) de données OOB */
echo "Received Out-Of-Band: '" stream_socket_recvfrom($socket1500STREAM_OOB) . "'\n";

/* Lit les données normales in-band, mais ne modifie rien */
echo "Data: '" stream_socket_recvfrom($socket1500STREAM_PEEK) . "'\n";

/* Relit le même paquet, mais vide le buffer. */
echo "Data: '" stream_socket_recvfrom($socket1500) . "'\n";

/* Terminaison */
fclose($socket);
fclose($server);
?>

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

Notes

Note:

Si le message reçu est plus grand que length, les données supplémentaires peuvent être détruites, suivant le type de socket utilisé (par exemple UDP).

Note:

L'appel de stream_socket_recvfrom() sur les flux basés sur le socket, après l'appel de fonctions de flux basé sur un tampon (comme fread() ou stream_get_line()) lit directement les données à partir du socket et évite l'utilisation du tampon avec le flux.

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

Voir aussi

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.stream-socket-recvfrom.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