(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
msg_send — Envoie un message dans une file
$queue,$message_type,$message,$serialize = true,$blocking = true,&$error_code = null
msg_send() envoie le message message
de type message_type (qui DOIT être plus grand que 0)
à la file de messages identifiée par queue.
queueLa file d'attente de messages
message_typeLe type du message (DOIT être plus grand que 0)
messageLe corps du message
Note:
Si
serializeest définit àfalseest fournit, DOIT être du type : chaîne de caractères, entier, nombre décimal ou booléen. Dans d'autres cas un avertissement sera émit.
serialize
Le paramètre optionnel serialize contrôle la
méthode d'envoi du message message. serialize
vaut par défaut true ce qui signifie que le message message
sera sérialisé en utilisant le même mécanisme que celui qui est utilisé
par les sessions, avant d'être envoyé à la file de message. Cela permet
d'envoyer des tableaux et des objets complexes à d'autres scripts
PHP, ou bien, si vous utilisez l'extension WDDX, d'échanger des messages
avec des clients compatibles WDDX.
blocking
Si le message est trop grand pour être stocké par la file, votre
script attendra jusqu'à ce qu'un autre processus lise dans la
file un message, et libère assez de place pour votre message. C'est
le mode bloquant : vous pouvez éviter ce mode en utilisant le
paramètre blocking avec la valeur false :
dans ce cas, msg_send() retournera immédiatement
false si le message est trop gros pour la file. Il assignera alors
au paramètre error_code la valeur de
MSG_EAGAIN,
indiquant que vous devriez essayer d'envoyer à nouveau votre
message, un peu plus tard.
error_codeSi la fonction échoue, le code d'erreur optionnel sera définit à la valeur de la variable système errno.
Cette fonction retourne true en cas de succès ou false si une erreur survient.
Lors de l'émission réussie d'un message, la file est mise à jour
comme ceci : msg_lrpid prend la valeur de l'identifiant
de processus du processus appelant, msg_qnum est incrémenté de
1 et msg_rtime prend la date et l'heure courante.
| Version | Description |
|---|---|
| 8.0.0 |
queue attend désormais une SysvMessageQueue;
auparavant, une resource était attendue.
|