php的amqp应该怎样使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php的amqp应该怎样使用相关的知识,希望对你有一定的参考价值。

参考技术A   我安装了rabbitmq和php的amqp扩展,但是不知道怎么使用,我在网上搜了教程,但是不是太懂,
  这是send.php文件,

  $conf=[
  'host'=>'localhost',
  'port'=>'5672',
  'login'=>'guest',
  'password'=>'guest',
  'vhost'=>'/'
  ];
  $connect=new \AMQPConnection($conf);
  if(!$connect->connect())
  die('connetc error');
  
  $message = "TEST MESSAGE! 测试消息!";
  $channel=new AMQPChannel($connect);
  $exchange=new AMQPExchange($channel);
  $exchange->setName('zblExchange');
  $queue = new AMQPQueue($channel);
  $queue->setName('zblQueue');
  for($i=0; $i<5; ++$i)
  echo "Send Message:".$exchange->publish($message, 'zblQueue')."\n";
  
  //$channel->commitTransaction(); //提交事务

  $connect->disconnect();
  这是receive.php文件

  $conf=[
  'host'=>'localhost',
  'port'=>'5672',
  'login'=>'guest',
  'password'=>'guest',
  'vhost'=>'/'
  ];
  $connect=new AMQPConnection($conf);
  if(!$connect->connect())
  die('connetc error');
  
  $channel=new AMQPChannel($connect);
  $exchange=new AMQPExchange($channel);
  $exchange->setName('zblExchange');
  $exchange->setType(AMQP_EX_TYPE_DIRECT);
  //echo "Exchange Status:".$exchange->declare()."\n";

  $queue = new AMQPQueue($channel);
  $queue->setName('zblQueue');
  $queue->setFlags(AMQP_DURABLE); //持久化
  echo "Message Total:".$queue->declare()."\n";
  echo 'Queue Bind: '.$queue->bind('zblExchange', 'zblQueue')."\n";
  echo "Message:\n";
  //while(True)
  $queue->consume('processMessage');
  //echo'hello';
  //$q->consume('processMessage', AMQP_AUTOACK); //自动ACK应答
  //

javascript用ajax向PHP传json格式数据,在PHP文件中应该怎样接?

我在javascript里面将一个对象使用 JSON.stringify() 将一个对象变为json格式后使用ajax方法传入PHP页面,使用的POST方法,但是在PHP文件中打印$_POST却是空数组,请问高手们是什么原因。由于字数限制,我会把测试代码放到追问中或附件中 百度的限制字数太烦了,代码都粘不了,只好把主要部分的代码贴出来: var data = ; data['position_displayName'] = "地区"; var checkedOptionValue = new Array(); checkedOptionValue.push("香港"); checkedOptionValue.push("美国"); data['position'] = checkedOptionValue; var jsonData = JSON.stringify(data); sendAjax(jsonData); 最后的jasonData就是我传入ajax文件的值,用火狐看得到运行了PHP文件,post的值是一个JSON格式的,可是PHP页面var_dump($_POST)却是空数组。确定是用post方法传的

参考技术A 你传送之前
alert(json.key)
看一下有没有变为正确json数据。
也可以这样
for(var
i
in
json)
alert(i+":"+json[i]);

以上是关于php的amqp应该怎样使用的主要内容,如果未能解决你的问题,请参考以下文章

javascript用ajax向PHP传json格式数据,在PHP文件中应该怎样接?

php mongo条件有and和or时应该怎样写

MySQL连接超时自动断开连接应该怎样处理

怎样激活centos7中的php

eclipse怎样安装php插件

windows下安装rabbitmq的php扩展amqp