您的位置:

phpjson数据推送(php提交json)

phpjson数据推送(php提交json)

更新:

本文目录一览:

php如何发送和接收JSON数据

对于json,PHP有对应的方法进行操作。

一般而言,json会以字符串形式传给PHP脚本,一般都是放在$_POST里面,

14

?php

// 接收

$json_parameter = $_POST['json_str'];

// 处理, 变成数组

$array = json_decode($json_parameter);

// PHP 把数组数据变成json格式字符串,发给页面

$demo = array(

'key' = 'value',

'key2' = 'value2'

);

$demo_json = json_encode($demo); // 格式是{"key":"value","key2":"value2"}

echo $demo_json;

如何在php后端及时推送消息给客户端

?php

use Workerman\Worker;

require_once './Workerman/Autoloader.php';

// 初始化一个worker容器,监听1234端口

$worker = new Worker('websocket://0.0.0.0:1234');

// 这里进程数必须设置为1

$worker-count = 1;

// worker进程启动后建立一个内部通讯端口

$worker-onWorkerStart = function($worker)

{

// 开启一个内部端口,方便内部系统推送数据,Text协议格式 文本+换行符

$inner_text_worker = new Worker('Text://0.0.0.0:5678');

$inner_text_worker-onMessage = function($connection, $buffer)

{

global $worker;

// $data数组格式,里面有uid,表示向那个uid的页面推送数据

$data = json_decode($buffer, true);

$uid = $data['uid'];

// 通过workerman,向uid的页面推送数据

$ret = sendMessageByUid($uid, $buffer);

// 返回推送结果

$connection-send($ret ? 'ok' : 'fail');

};

$inner_text_worker-listen();

};

// 新增加一个属性,用来保存uid到connection的映射

$worker-uidConnections = array();

// 当有客户端发来消息时执行的回调函数

$worker-onMessage = function($connection, $data)use($worker)

{

// 判断当前客户端是否已经验证,既是否设置了uid

if(!isset($connection-uid))

{

// 没验证的话把第一个包当做uid(这里为了方便演示,没做真正的验证)

$connection-uid = $data;

/* 保存uid到connection的映射,这样可以方便的通过uid查找connection,

* 实现针对特定uid推送数据

*/

$worker-uidConnections[$connection-uid] = $connection;

return;

}

};

// 当有客户端连接断开时

$worker-onClose = function($connection)use($worker)

{

global $worker;

if(isset($connection-uid))

{

// 连接断开时删除映射

unset($worker-uidConnections[$connection-uid]);

}

};

// 向所有验证的用户推送数据

function broadcast($message)

{

global $worker;

foreach($worker-uidConnections as $connection)

{

$connection-send($message);

}

}

// 针对uid推送数据

function sendMessageByUid($uid, $message)

{

global $worker;

if(isset($worker-uidConnections[$uid]))

{

$connection = $worker-uidConnections[$uid];

$connection-send($message);

return true;

}

return false;

}

// 运行所有的worker(其实当前只定义了一个)

Worker::runAll();

启动后端服务

php push.php start -d

前端接收推送的js代码

var ws = new WebSocket('ws://127.0.0.1:1234');

ws.onopen = function(){

var uid = 'uid1';

ws.send(uid);

};

ws.onmessage = function(e){

alert(e.data);

};

后端推送消息的代码

// 建立socket连接到内部推送端口

$client = stream_socket_client('tcp://127.0.0.1:5678', $errno, $errmsg, 1, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT);

// 推送的数据,包含uid字段,表示是给这个uid推送

$data = array('uid'='uid1', 'percent'='88%');

// 发送数据,注意5678端口是Text协议的端口,Text协议需要在数据末尾加上换行符

fwrite($client, json_encode($data)."\n");

// 读取推送结果

echo fread($client, 8192);

这里的uid不一定是用户的id,也可以理解为任务id即 taskid

以上代码亲测可以直接使用

PHP如何通过Post请求发送Json数据

首先要把数据转换成json格式,再通过curl方法调用接口并传参数

代码如下:

$keyword = urlencode($_POST['keyword']);

$parameters = json_encode(array('keyWord'=$keyword,'areaCode'='*'));

$post_data['appToken'] = "323ds7674354fds32fdsda60173";//随便写的

$post_data['parameters'] = $parameters;

$url = '';//随便写的

$ch = curl_init();

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);//用post方法传送参数

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$response = curl_exec($ch);

curl_close($ch);

之后就返回数据即可。

php的json怎么传到前台?

json.php

?php

echo '{"key":"value"}';

js

$.get('json.php',function(data){console.info(data);});

phpjson数据推送(php提交json)

本文目录一览: 1、php如何发送和接收JSON数据 2、如何在php后端及时推送消息给客户端 3、PHP如何通过Post请求发送Json数据 4、php的json怎么传到前台? php如何发送和接收

2023-12-08
phpjson怎么弄,php处理json

本文目录一览: 1、如何让 PHP json 2、如何正确运用PHP json 3、PHP生成及获取JSON文件的方法 4、php json操作 如何让 PHP json 简单...?php$arra

2023-12-08
phpjson解析不(PHP解析json)

本文目录一览: 1、php代码中不能解析json吗 2、php 解析不了json 3、PHP返回的JSON里含有未知字符使数据无法解析 4、php解析不了JSON? php代码中不能解析json吗 额

2023-12-08
phpjson保存,php生成json数据

本文目录一览: 1、json数据怎么通过php存入数据库 2、php存入数据库 如何将json格式的数据直接存入mysql数据库 3、PHP json数据写入到json文件,读取json文件 json

2023-12-08
phpjson,PHPjson格式

本文目录一览: 1、如何在PHP中返回Json数据 2、PHP生成及获取JSON文件的方法 3、PHP json数据写入到json文件,读取json文件 4、PHP是怎么返回json格式的数据 如何在

2023-12-08
phpjson字符串转对象(php json转字符串)

本文目录一览: 1、php 怎么 字符串 转 json对象 2、JSON PHP中,Json字符串反序列化成对象/数组的方法 3、php如何返回json对象呢 4、PHP怎么把json字符串转为对象

2023-12-08
百度链接提交自动推送js代码版,百度自动提交链接php推送

本文目录一览: 1、网站优化技巧:百度自动推送你会用吗 2、如何安装百度自动推送 3、如何给网站添加百度自动推送工具,增加网站收录 4、百度站长工具链接提交主动推送怎么用 5、如何为网站安装百度自动推

2023-12-08
phpjson解析微信(php解析json数据)

本文目录一览: 1、PHP怎么解析微信支付结果返回的xml 2、php json解析 出现问题 Notice: Trying to get property of non-object in。。。 3

2023-12-08
把数据提交给php示例(php发送数据)

2022-11-14
phpjson数组解析,循环json数组的值

本文目录一览: 1、如何在PHP中解析json 2、怎么解析从PHP传过来的JSON数据? 3、php解析json并输出到html页面 4、php解析json数组问题。 5、php怎样接收整个json

2023-12-08
phpjson对象排序,json排序 js

本文目录一览: 1、php根据json其中的一个键值大小重新排序 2、php对象转json字符串时如何排序 3、大神帮忙改下PHP输出JSON结果的顺序 php根据json其中的一个键值大小重新排序

2023-12-08
js如何提交与php(表单提交js)

本文目录一览: 1、如何把一个js变量传给php变量 2、js如何提交post使php获取(使用原生js) 3、js如何传值给php? 4、怎样把js中的数组提交到php中 5、如果用JS提交表单数据

2023-12-08
js发送数据给php,js接收数据

2022-11-25
ajax获取phpjson,ajax获取json数据并显示

2022-11-27
php中post返回json里json,post提交json

本文目录一览: 1、PHP如何通过Post请求发送Json数据 2、PHP返回json对象的问题 3、在PHP中怎么接收post过来的JSON数据 4、PHP使用POST传递json数据的接收与处理问

2023-12-08
php中script有什么作用(php中script标签)

2022-11-15
ajax提交数据至后端php(ajax前后端数据交互)

2022-11-15
java传json到php(java生成json数据)

2022-11-09
java学习笔记(java初学笔记)

2022-11-14
极光推送java代码示例(java集成极光推送)

2022-11-12