安装第三方扩展
代码语言:txt复制composer require fusesource/stomp-php:2.0.*
安装完成后,目录结构如下:
测试
创建一个test.php,内容如下:
代码语言:txt复制<?php
//引入自动加载的文件
require __DIR__.'/vendor/autoload.php';
use FuseSourceStompStomp;
/**
* PHP的ActiveMQ类
*/
class ActiveMQ {
private $conn;
private $tcp = 'tcp://1xx.xxx.xx.xx:xxxx';
/**
* 初始化
*/
public function __construct()
{
$this->conn = new Stomp($this->tcp);
$this->conn->connect();
}
/**
* 推送数据
*
* @param [type] $data
* @param string $queue
* @return void
*/
public function send($queue, $data)
{
//将数组JSON化
if(is_array($data)){
$data = json_encode($data, JSON_UNESCAPED_UNICODE);
}
//persistent设置为true,持久化
$result = $this->conn->send($queue, $data, ['persistent' => 'true']);
return $result;
}
/**
* 断开链接
*/
function __destruct()
{
$this->conn->disconnect();
}
}
//测试推送
$data = [
'name' => '张三',
'age' => '18'
];
$mqModel = new ActiveMQ();
$res = $mqModel->send('test', $data);
print($res);