函數(shù)名稱:msg_set_queue()
適用版本:PHP 4 >= 4.3.0, PHP 5, PHP 7
函數(shù)描述:msg_set_queue() 函數(shù)用于設(shè)置一個(gè)消息隊(duì)列的屬性。
語(yǔ)法:bool msg_set_queue ( resource $queue , array $data )
參數(shù):
- $queue:消息隊(duì)列的資源標(biāo)識(shí)符,通過(guò) msg_get_queue() 函數(shù)獲取。
- $data:一個(gè)包含隊(duì)列屬性的關(guān)聯(lián)數(shù)組,包括以下鍵值對(duì):
- "msg_perm.uid":隊(duì)列的所有者的用戶ID。
- "msg_perm.gid":隊(duì)列的所有者的組ID。
- "msg_perm.mode":隊(duì)列的訪問(wèn)權(quán)限。
- "msg_qbytes":隊(duì)列的最大字節(jié)數(shù)。
- "msg_lspid":最后發(fā)送消息的進(jìn)程ID。
- "msg_lrpid":最后接收消息的進(jìn)程ID。
- "msg_stime":最后發(fā)送消息的時(shí)間戳。
- "msg_rtime":最后接收消息的時(shí)間戳。
- "msg_ctime":隊(duì)列的創(chuàng)建時(shí)間戳。
返回值:成功時(shí)返回 true,失敗時(shí)返回 false。
示例:
<?php
// 創(chuàng)建一個(gè)新的消息隊(duì)列
$queue = msg_get_queue(12345, 0666);
// 設(shè)置隊(duì)列的屬性
$data = array(
"msg_perm.uid" => 1001,
"msg_perm.gid" => 1001,
"msg_perm.mode" => 0666,
"msg_qbytes" => 8192,
"msg_lspid" => getmypid(),
"msg_lrpid" => 0,
"msg_stime" => time(),
"msg_rtime" => 0,
"msg_ctime" => time()
);
if (msg_set_queue($queue, $data)) {
echo "消息隊(duì)列屬性設(shè)置成功!";
} else {
echo "消息隊(duì)列屬性設(shè)置失??!";
}
// 關(guān)閉消息隊(duì)列
msg_remove_queue($queue);
?>
以上示例中,我們首先使用 msg_get_queue() 函數(shù)創(chuàng)建了一個(gè)新的消息隊(duì)列,并將其資源標(biāo)識(shí)符賦值給 $queue 變量。然后,我們使用 msg_set_queue() 函數(shù)設(shè)置了該隊(duì)列的屬性,包括所有者的用戶ID、組ID、訪問(wèn)權(quán)限、最大字節(jié)數(shù)等。最后,我們通過(guò)判斷 msg_set_queue() 函數(shù)的返回值來(lái)確定屬性設(shè)置是否成功,并輸出相應(yīng)的結(jié)果。最后,我們使用 msg_remove_queue() 函數(shù)關(guān)閉了消息隊(duì)列。
請(qǐng)注意,示例中的消息隊(duì)列ID為 12345,您可以根據(jù)實(shí)際需求修改為其他合適的值。