(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
msg_receive — Reçoit un message depuis une file de messages
$queue,$desired_message_type,&$received_message_type,$max_message_size,&$message,$unserialize = true,$flags = 0,&$error_code = null
   msg_receive() reçoit le premier message de la
   file queue, le type est spécifié par
   desired_message_type.
  
queueDescripteur de ressource de file d'attente de messages
desired_message_type
       Si desired_message_type vaut 0, le premier message
       de la file est retourné. Si desired_message_type vaut
       plus que 0, alors le premier message de ce type sera retourné.
       Si desired_message_type vaut moins que 0, le premier
       message de la file ayant un type inférieur ou égal à la valeur absolue
       de desired_message_type sera retourné. Si aucun message
       ne correspond aux critères, votre script attendra la venue d'un tel
       message dans la file. Vous pouvez éviter ce blocage en précisant l'option
       MSG_IPC_NOWAIT dans le paramètre
       flags.
      
received_message_typeLe type de message qui a été reçu sera stocké dans ce paramètre.
max_message_size
       La taille maximale de message est fixée par
       max_message_size ; si le message de la file est plus grand
       que cette taille, la fonction échouera (à moins que vous
       n'utilisiez une option flags, décrite ci-dessous).
      
message
       Le message reçu sera stocké dans le paramètre message,
       à moins qu'il n'y ait eu des erreurs de réception du message.
      
unserializeQuand c'est le cas, le message est traité comme s'il avait été linéarisé avec le même mécanisme que le module de session. Le message sera alors délinéarisé, puis retourné au script. Cela vous permettra de recevoir facilement des tableaux ou des objets complexes dans votre script, émis par d'autres scripts PHP, ou, si vous utilisez WDDX, depuis n'importe quelle source compatible WDDX.
       Si unserialize vaut false,
       le message sera retourné intact, et sans modifier les valeurs binaires.
      
flags
       Le paramètre flags permet de passer des options
       pour configurer les appels msgrcv. Par défaut, il vaut 0, mais vous pouvez
       spécifier une ou plusieurs options en les combinant avec l'opérateur OR).
       
| MSG_IPC_NOWAIT | S'il n'y a pas de message du type desired_message_type, retourne immédiatement
            et n'attend pas. La fonction échouera et retournera un entier
            correspondant àMSG_ENOMSG. | 
| MSG_EXCEPT | En utilisant cette option en combinaison avec
           un type desired_message_typesupérieur à 0, la 
           fonction va lire le premier message qui n'est pas
           du type demandé pardesired_message_type. | 
| MSG_NOERROR | Si le message est plus grand que max_message_size,
            cette option va tronquer le message à la taille demax_message_sizeet ne signalera pas d'erreur. | 
errorcode
       Si la fonction échoue, le paramètre optionnel
       error_code sera défini à 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 la réception 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 décrémenté de
   1 et msg_rtime prend la date et l'heure courante.
  
| Version | Description | 
|---|---|
| 8.0.0 | queueattend désormais une SysvMessageQueue;
        auparavant, une resource était attendue. |