Swoole WebSocket 服务端如何主动推送消息?

最近有个朋友在使用swoole做一个在线看球赛的功能,球赛数据是实时更新的;要实现的是用户在浏览网页自动更新球赛数据(数据源是一个三方机构提供的,明确上线3秒请求一次);解决方案:轮询:客户端定时请求服务端接口(服务端再请求第三方接口);大概就是这样一个流程;虽然流程和逻辑简单,但是负载大、并且用户看到的结果可能是不一致的;swoole websocket方案:服务端定时请求接口,如果数据有...

php 2020-06-30 PM 74次 1条

PHP如何编译安装Reids扩展?

在使用linux、mac在某些情况下总是要比windows 要便利很多;如何给PHP安装Redis扩展,编译安装既适用于Linux也适用于MAC OS;下载php-redishttps://nodeload.github.com/nicolasff/phpredis/zip/master解压包,注意自己解压的位置tar -zxvf phpredis-master.zip进入redia扩展目录...

php 2020-01-03 PM 765次 4条

PHP+Element UI递归实现无限极树形菜单

使用后台都会涉及到左侧的菜单分类;刚好今天再使用Yaf + element 做一个通用后台,实现了一下无限极菜单;下面具体讲一下实现方法:分为几个步骤:获取所有菜单递归分级递归渲染菜单首先我们来看一下element的菜单html结构<el-menu default-active="2" class="el-menu-vertical...

php 2019-12-26 AM 465次 0条

看懂PHP单例模式只需要看这篇文章即可

在项目中单例模式是一个使用率非常高的设计模式,在这里我们来介绍一下单例模式。多数文章中严格的说明了单例模式必须三私一公,实际在项目中运用并非这么严格,下面简单的写一个普通实例:class b{ public $a = 0; public $b = 0; public function __construct() { $thi...

php 2019-11-29 PM 938次 2条

改造Yaf、完美支持多域名、多平台、多环境、分布式

在之前我写过一些关于yaf的文章、也出过yaf写过的博客和后台管理系统、但是都不满意,想象给大家提供一套快速应用的模版项目,不如给大家提供项目架构的思路,毕竟撸业务代码谁都会,重要的思想却要经过多年工作经验,在项目实战总结而来,该架构我应用于千万级项目生产中、对yaf做了简单修改就赋予了它的高能。增加了一个后台管理系统,界面如下:在使用yaf的过程中发现很多的不足,最大的几点表现在:不支持多...

php 2019-11-28 PM 1154次 3条

php apcu安装、和使用方法以及会遇到的问题解答

APCu是剥离了操作码缓存的APC。第一个APCu代码库的​​版本为4.0.0,当时是从APC主分支的头派生的。从APCu 5.0.0开始提供PHP 7支持。APCu可以提供兼容模式,从而可以减少对APC适用部件的替换。说白了就是apc的进化版。如果需要了解apc的请参考以下链接https://www.php.net/manual/zh/intro.apc.php| Windos开发环境下如...

php 2019-11-27 PM 861次 0条

PHP if elseif else 去掉大括号的操作在嵌套时要慎用

大家都知道再PHP编程语法中有一个非常人类的语法,我个人非常喜欢使用,在流程控制语句或者循环时,当只有一句的时候 大括号可以省略,例如:$a = 1; if($a >0) echo '省略大括号....';输出结果:省略大括号....实际上跟以下代码一致:$a = 1; if($a >0){ echo '省略大括号....'; }输出结果:省略大括号....在有些情况下,我们为...

php 2019-11-25 PM 647次 0条

一篇以PHP根据最新劳务个税税率计算所得税、奖金的PHP类

2018-2019 最新劳务个税税率表表格数据如下:class Calculator{ public function __set($name, $value) { // TODO: Implement __set() method. $this->$name = $value; } public function __...

php 2019-11-15 PM 486次 0条

JSON Web Token(JWT)目前最流行的跨域身份验证解决方案(PHP)类

JSON Web Token(JWT)是目前最流行的跨域身份验证解决方案,下面我自己封装了一个PHP的Jwt类,直接复制即可使用,无需composer安装包;常规的身份验证流程为:该方案的最大的短板在于如果要实现多站用户登录状态共享则需要一个统一的session数据库库来保存会话数据实现共享,这样负载均衡下的每个服务器才可以正确的验证用户身份。如果实现了session共享依然有单点风险,se...

php 2019-11-06 AM 543次 0条