跳转到正文

# php.

关于 php 的技术笔记与实践,集中在这里。

php5 分钟

php 生成 RSS 订阅

rss文件本身是xml,只要找到它的规范,使用php 数组转xml 就可以了 代码实现 $data=[ 'title'=>'写代码的崔哥', 'link'=>'https://www.cuiwei.net/', 'description'=>'一名PHP程序员,涉猎广泛:PHP,运维,前端,Android,iOS。会不…

2,337 次阅读
阅读全文
php3 分钟

Redis 实现限流

下面介绍两种方法 zset function uuid(){ $str = "123456790abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; $uuid = ""; for ($i = 0; $i connect("docker-redis", 6379)…

3,428 次阅读
阅读全文
Backend3 分钟

php 使用 Kafka

kafka没有重试机制不支持消息重试,也没有死信队列,因此使用kafka做消息队列时,如果遇到了消息在业务处理时出现异常,就会很难进行下一步处理。应对这种场景,需要自己实现消息重试的功能。 自己实现重试机制 cli #停止 kafka-server-stop.sh #前台启动 kafka-server-start.sh…

3,297 次阅读
阅读全文
Backend5 分钟

elasticsearch 分词

安装中文、拼音分词 https://github.com/medcl/elasticsearch-analysis-ik https://github.com/medcl/elasticsearch-analysis-pinyin 下载和 elasticsearch 对应的版本,解压后移到 plugins 目录 roo…

2,688 次阅读
阅读全文
Backend5 分钟

elasticsearch 3种分页方式

本文将提供原始 restfull api 和 elasticsearch-php 的示例 from + size 不适合深度分页, max_result_window 默认10k size, from类似sql语句里的limit, 如 limit {from} {size} ; size:每页条数 from:从第几个行…

3,752 次阅读
阅读全文
Backend1 分钟

基于docker的php开发环境,多容器

之前写过一篇 vagrant + virtualbox搭建一个可移动的开发环境 ,现在有了更好的选择,基于docker的php开发环境 拥有前者所有的优点 https://github.com/chudaozhe/dev-environment-php

2,824 次阅读
阅读全文
php8 分钟

RabbitMQ通过websocket与前端通信

本文主要介绍的是 RabbitMQ 的一个插件 —— STOMP ,还有一个 MQTT 插件,也是不错的选择,详见: RabbitMQ插件之MQTT 如何安装rabbitmq,请移步: http://www.cuiwei.net/p/1371869141 启用stomp插件 vi enabled_plugins [..…

5,328 次阅读
阅读全文
Backend6 分钟

使用 Beanstalk 实现微信支付的异步通知

Beanstalk介绍 Beanstalk是一个基于内存的(binlog持久化到硬盘),事件驱动(libevent),简单、快速的任务队列,支持大部分编程语言,将前台的任务转为后台异步处理,为web开发提供更高弹性。它可以支持多个server(客户端支持),一个任务只会被投递到一台server,一个任务只会被一个消费者…

3,110 次阅读
阅读全文
其他4 分钟

支付宝支付回调的处理

支付宝异步通知会有很多参数,正常POST接收就行 注意:支付的异步通知和退款的异步通知是同一个url $data=$_POST; 验证签名 其验签步骤为: 第一步: 在通知返回参数列表中,除去sign、sign_type两个参数外,凡是通知返回回来的参数皆是待验签的参数。 TIPS: 生活号异步通知组成的待验签串里需要…

4,995 次阅读
阅读全文