文字

msg_queue_exists

(PHP 5 >= 5.3.0)

msg_queue_existsCheck whether a message queue exists

说明

bool msg_queue_exists ( int $key )

Checks whether the message queue key exists.

参数

key

Queue key.

返回值

成功时返回 TRUE , 或者在失败时返回 FALSE

参见

  • msg_remove_queue() - Destroy a message queue
  • msg_receive() - Receive a message from a message queue
  • msg_stat_queue() - Returns information from the message queue data structure

用户评论:

[#1] tkuschel at loytec dot com [2012-07-05 20:40:45]

Following code will do the job:
<?php
$key 
0;
while (
true) {
  echo 
$key,"...\r";
  if (
msg_queue_exists($key))
   echo 
"\r",$key,'::Exists',"\n";
   
$key++;
}
?>

[#2] michael dot hajuu at gmail dot com [2011-03-09 05:01:49]

A simple script for checking what message queues are in use on a [presumably new] server environment.

Run with php-cli

<?php
$k 
0;
while (
true) {
  echo 
$key,"...\r";
  if (
msg_queue_exists($key))
   echo 
"\r",$key,'::Exists',"\n";
   
$key++;
}
?>

[#3] jaredm [2009-12-10 16:31:59]

A workaround for those not yet running 5.3 on *nix:

<?php
function queue_exists($key) {
    if(
function_exists("msg_queue_exists")) {
        return 
msg_queue_exists($key);
    } else {
        
$aQueues = array();
        
exec("ipcs -q | grep \"^[0-9]\" | cut -d \" \" -f 1"$aQueues);
        if(
in_array($key,$aQueues)) return true;
        else return 
false;
    }
}
?>


Maybe a bit slow and kludgey, but it works.

上一篇: 下一篇: