PHP
文章平均质量分 51
linkaisheng101990
这个作者很懒,什么都没留下…
展开
-
文章标题
几个常用的PHP宏,先一个一个记下来吧,以后还会增加不少: main/SAPI.h:define SG(v) TSRMG(sapi_globals_id, sapi_globals_struct *, v)SG宏主要用于获取SAPI层范围内的全局变量原创 2015-04-13 14:46:33 · 350 阅读 · 0 评论 -
zend_language_scanf & parse
zendlex -> yylex; zendparse -> yyparse原创 2016-04-16 17:24:34 · 377 阅读 · 0 评论 -
一些资料
http://www.cnblogs.com/chenpingzhao/p/4922246.html转载 2016-03-13 16:25:59 · 381 阅读 · 0 评论 -
关于php线程安全的一些东西
本篇文字转自:http://blog.codinglabs.org/articles/zend-thread-safety.html在阅读PHP源码和学习PHP扩展开发的过程中,我接触到大量含有“TSRM”字眼的宏。通过查阅资料,知道这些宏与Zend的线程安全机制有关,而绝大多数资料中都建议按照既定规则使用这些宏就可以,而没有说明这些宏的具体作用。不知道怎么回事总是令人不舒服的,因此我通过阅读源码和转载 2016-02-28 14:35:53 · 638 阅读 · 0 评论 -
开发protobuf扩展的一些笔记
一个需求要接入公司内部的一个基于protobuf协议的接口,protobuf的库文件都是proto编译器生成的cpp文件。要编译成php扩展的话,需要c/c++混编,这里记录一下。1、升级一下安装的protobuf,貌似C1的机器上的protobuf都是2.4.0的,当编译高级的一些语法的proto文件的时候都会报错的,升级到2.5.0以上的版本好些。2、proto编译器会根据proto文件生成相关原创 2016-01-05 17:43:40 · 1974 阅读 · 0 评论 -
php7下的opcache特性导致的一个bug排查
首先这不是opcache的bug,我感觉这算是新特性导致代码不太兼容导致的,因为我们的代码在php5下是跑正常的。 最近在给我们的框架兼容php7,因为框架是扩展的形式,所以得针对新版的zend api修改。一些都OK了,在cli测试都是没问题的,感觉很爽。但是放到了php-fpm的环境下,打开opcache。一些乱七八糟的事情发生了,fpm启动后第一次请求是正常,第二次后就各种segmentfa原创 2015-11-27 17:42:15 · 4600 阅读 · 2 评论 -
调试fpm的一些小笔记
fpm状态下没法生成core文件的条件下调试比较麻烦。 1、core文件无法生成 1)、不能生成原因很多,比如不让生成,或者线上环境,或者core文件过大等等,anyway,就是各种不方便生成而且非要生成就得改一些参数还要重启重新登录等等乱七八糟的原因..。 2)、修改fpm的配置文件,让只生成一个fpm子进程。重启,获取该process ID。 3)、gdb && gdb原创 2015-11-27 17:43:32 · 1253 阅读 · 0 评论 -
一个轻量级的c编写的php接口平台框架
1、gihtub地址:https://github.com/linkaisheng/edge 2、程序流程图: 3、性能彪悍,文档待续..原创 2015-11-01 14:39:43 · 1556 阅读 · 0 评论 -
php扩展获取_ENV、_SERVER时踩到的坑。
最近写个router组件,需要获取SERVER这种超全局变量。发现在symbool_table里面死活拿不到,但是POST、GET的可以拿啊。。我就郁闷了,最后看了下初始化流程。发现坑爹的就排除了SERVER和ENV这2变量的初始化在symbool_table里面-。-。最后上了官网查到了这个,http://php.net/manual/en/ini.core.php#ini.auto-global原创 2015-06-05 18:38:20 · 1787 阅读 · 2 评论 -
yar框架的并行原理分析(libcurl+epoll)
yar是一个轻量级的php rpc框架。有意思的是它的并行,其实就是libcurl作为网络库提供http请求,然后用epoll做为事件监听来实现整个异步并行调用的。在此基础上,就是如何利用zend api来对整个逻辑的封装了。我们先抛开zend api,单独看看libcurl 结合 epoll 是如何来做到异步并行调用的。 先大致熟悉一下libcurl,官网http://curl.haxx.se/原创 2015-11-01 13:01:19 · 3023 阅读 · 2 评论