目录中汉字部分代表已经翻译完成的章节,带链接的表示已经发布的,未待链接的表示正在校正即将发布的。

  1. PHP的生命周期
    1. 让我们从SAPI开始
    2. PHP的启动与终止
    3. PHP的生命周期
    4. 线程安全
    5. 小结
  2. PHP变量在内核中的实现
    1. 变量的类型
    2. 变量的值
    3. 创建PHP变量
    4. 变量的存储方式
    5. 变量的检索
    6. 类型转换
    7. 小结
  3. 内存管理
    1. 内存管理
    2. 引用计数
    3. 总结
  4. 配置编译环境
    1. 编译前的准备
    2. PHP编译前的config配置
    3. Unix/Linux平台下的编译
    4. 在Win32平台上编译PHP
    5. 小结
  5. 第一个扩展
    1. 一个扩展的基本结构
    2. 编译我们的扩展
    3. 静态编译
    4. 编写函数
    5. 小结
  6. 函数的返回值
    1. 一个特殊的参数:return_value
    2. 引用与函数的执行结果
    3. 小结
  7. 函数的参数
    1. zend_parse_parameters
    2. Arg Info 与类型绑定
    3. 小结
  8. Array与HashTable
    1. 数组(C中的)与链表
    2. 操作HashTable的API
    3. 在内核中操作PHP语言中数组
    4. 小结
  9. PHP中的资源类型
    1. 复合类型的数据——资源
    2. Persistent Resources
    3. 资源自有的引用计数
    4. 小结
  10. PHP中的面向对象(一)
    1. zend_class_entry
    2. 定义一个类
    3. 定义一个接口
    4. 类的继承与接口的实现
    5. 小结
  11. PHP中的面向对象(二)
    1. 生成对象的实例与调用方法
    2. 读写对象的属性
    3. 小结
  12. 启动与终止的那点事
    1. 关于生命周期
    2. MINFO与phpinfo
    3. 常量
    4. PHP扩展中的全局变量
    5. PHP语言中的超级全局变量
    6. 小结
  13. ini配置文件
    1. 读写ini配置
    2. 小结
  14. 流式访问
    1. 流的概览
    2. 打开与读写流
    3. Static Stream Operations
    4. 小结
  15. 流的实现
    1. PHP Streams的本质
    2. 流的封装——wrapper
    3. 实现wrapper
    4. Manipulation
    5. 状态与属性读取
    6. 小结
  16. 有趣的流
    1. 流的上下文
    2. 流的过滤器
    3. 小结
  17. 配置和链接
    1. Autoconf
    2. 库的查找
    3. 强制模块依赖
    4. Speaking the Windows Dialect
    5. 小结
  18. 扩展生成器
    1. ext_skel生成器
    2. PECL_Gen生成器
    3. 小结
  19. 设置宿主环境
    1. 嵌入式SAPI
    2. 构建并编译一个宿主应用
    3. 通过嵌入包装重新创建cli
    4. 老技术新用
    5. 小结
  20. 高级嵌入式
    1. 回调到php中
    2. 错误处理
    3. 初始化php
    4. 覆写INI_SYSTEM和INI_PERDIR选项
    5. 捕获输出
    6. 同时扩展和嵌入
    7. 小结

PHP扩展开发及内核应用的更多相关文章

  1. 《PHP扩展开发及内核应用》

    https://github.com/walu/phpbook/blob/master/preface.md

  2. PHP扩展开发及内核应用(未完)

    转: https://github.com/walu/phpbook

  3. php扩展开发初探

    2015年2月26日 15:44:41 原因: 想用PHP实现一个布隆过滤器算法, 其中要用到位运算, 但是PHP的内置的int类型不给力, 不能支持大整数的位运算 数据一旦太大, 就会变为浮点数表示 ...

  4. PHP 扩展开发(将自己的一些代码封装成PHP扩展函数)

    今天时间不多,先给个地址,能搜到我这篇blog的朋友先看看我最近在看的一些文章.资料吧: 我的环境是 lnmp1.1 的 (LNMP一键安装包),所以要进行PHP扩展开发首先应该对环境配置和shell ...

  5. 关于PHP扩展开发(收藏)

    一.Linux shell命令: ls –lh    查看文件大小 du –a    查看文件及文件夹大小 -------------------------- nginx ------------- ...

  6. PHP扩展开发相关总结

    1.线程安全宏定义 在TSRM/TSRM.h文件中有如下定义 #define TSRMLS_FETCH() void ***tsrm_ls = (void ***) ts_resource_ex(0, ...

  7. 常见浏览器扩展开发笔记(chrome firefox 360 baidu qq sougou liebao uc opera)

    浏览器扩展开发貌似时下很冷门啊,但是不少企业还是有类似的应用,360的抢票插件啊,笔者最近在做的网页翻译扩展之类的.笔者在开发的过程中,遇到了不少坑,说是坑,说白了就是各个厂商支持的API不统一导致的 ...

  8. 【干货】Chrome插件(扩展)开发全攻略(不点进来看看你肯定后悔)

    写在前面 我花了将近一个多月的时间断断续续写下这篇博文,并精心写下完整demo,写博客的辛苦大家懂的,所以转载务必保留出处.本文所有涉及到的大部分代码均在这个demo里面:https://github ...

  9. 【干货】Chrome插件(扩展)开发全攻略

    写在前面 我花了将近一个多月的时间断断续续写下这篇博文,并精心写下完整demo,写博客的辛苦大家懂的,所以转载务必保留出处.本文所有涉及到的大部分代码均在这个demo里面:https://github ...

随机推荐

  1. JavaScript中的this指向

    this是谁 技术一般水平有限,有什么错的地方,望大家指正. this代指当前对象super调用父类的构造函数,应表会运网数物,加载驱动建立链接执行SQL处理结果,直到现在每想起这三点就能想起我上大学 ...

  2. Websocket简单例子

    websocket是Html5的一个协议,也就是说距离我们2016年就几年时间,其他原理我就不说了,直接讲例子 一.准备材料:1.一个开发工具必须支持javaEE7的,原因是javaEE6或以下不支持 ...

  3. 实现一个 能在O(1)时间复杂度 完成 Push、Pop、Min操作的 栈

    一,问题描述 实现一个栈(元素遵守先入后出顺序),能够通过 min 方法在 O(1)时间内获取栈中的最小元素.同时,栈的基本操作:入栈(Push).出栈(Pop),也是在O(1)时间内完成的. 二,问 ...

  4. A*算法——启发式搜索

    A*算法 本质还是搜索:加了优化而已 关于这个优化,听到两种说法: 1.剪枝 通过判断预计最少还要几步,加强版剪枝 比如说一个经典剪枝: 如果 步数≥已知最小值 则 剪枝 升级| V 如果 步数+最少 ...

  5. redis 3.0的集群部署

    转载请注明出处:http://hot66hot.iteye.com/admin/blogs/2050676 最近研究redis-cluster,正好搭建了一个环境,遇到了很多坑,系统的总结下,等到re ...

  6. .NET基础面试题整理

    1.什么是.NET?什么是CLI?什么是CLR?IL是什么?   (1).net用于代码编译和执行的集成托管环境,换句话,它管理应用程序运行的方方面面,包括首次运行的编译,为程序分配内存存储数据和指令 ...

  7. About_PHP_文件的上传

    在form表单中,我们上传文件用的是:<input type="file" name="fileUpload" />,当然,光是这样是不行的. 我们 ...

  8. arcmap配置的mxd慢的问题

    http://www.360doc.com/content/13/0220/09/3046928_266688511.shtml

  9. c++ 离散数学 群的相关判断及求解

    采用C/C++/其它语言编程,构造一个n阶群<G={a,b,c,…},*>,G的阶|G|满足:3<=|G|<=6 1.判断该群是否是循环群,若是,输出该群的某个生成元. 2.给 ...

  10. Lua面向对象

    lua中的table就是一种对象,但是如果直接使用仍然会存在大量的问题,如下: 1 Account = {balance = 0}2 function Account.withdraw(v)3 Acc ...