コード例 #1
0
<?php

require_once 'EventQueueHelper.php';
$callback = function ($msg) {
    echo 'send email to ' . $msg['email'] . ',' . $msg['cnt'] . "\n";
    $ret = 1;
    if ($ret == 0) {
        //若返回0,表示消息处理完成
        return 0;
    } elseif ($ret == 1) {
        //若返回1,表示希望等待一段时间后再处理,所以建议休眠一段时间后再尝试获取,否则容易造成"死循环"
        sleep(1);
        return 1;
    }
};
$queue = new EventQueueHelper();
while (true) {
    $ret = $queue->pop('registration', 'email', $callback);
}
コード例 #2
0
<?php

require_once 'EventQueueHelper.php';
$queue = new EventQueueHelper();
for ($i = 0; $i < 100; $i++) {
    $queue->push('registration', array('name' => 'jay', 'phone' => '68945673', 'email' => '*****@*****.**', 'cnt' => $i));
    echo $i . "\n";
    sleep(1);
}
コード例 #3
0
<?php

require_once 'EventQueueHelper.php';
$callback = function ($msg) {
    echo 'send sms to ' . $msg['phone'] . "\n";
};
$queue = new EventQueueHelper();
while (true) {
    $msg = $queue->pop('registration', 'sms');
    if ($msg !== null) {
        echo 'send sms to ' . $msg['phone'] . ',' . $msg['cnt'] . "\n";
    } else {
        echo "empty queue\n";
    }
    sleep(1);
}