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

  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. 【听说是线段树】bzoj1012 [JSOI2008]最大数maxnumber

    一眼看题目吓了一跳:这TM不就是单调队列吗,200000又怎样,大不了我二分嘛 系统提示:成功开启 手残模式 开始瞎写: #include <cstdio> ]; ]; int m,mod ...

  2. HDU 3306 Another kind of Fibonacci(快速幂矩阵)

    题目链接 构造矩阵 看的题解,剩下的就是模板了,好久没写过了,注意取余. #include <cstring> #include <cstdio> #include <s ...

  3. 利用轮播原理结合hammer.js实现简洁的滑屏功能

    最近有个任务,做一个非常小的h5的应用,只有2屏,需要做横向的全屏滑动切换和一些简单的动画效果,之前做这种东西用的是fullpage.js和jquery,性能不是很好,于是就想自己动手弄一个简单的东西 ...

  4. [转]Flash Player、AIR、Flex SDK 大全

    平时不断看到有朋友在各种论坛.空间.知道.群里求 Flash 平台各种版本的运行时(Flash Player)和SDK(Flex.AIR).今天就看到不下10次!所以决定把 Macromedia.Ad ...

  5. 第 12 章 Ajax

    学习要点:1.Ajax 概述2.load()方法3.$.get()和$.post()4.$.getScript()和$.getJSON()5.$.ajax()方法6.表单序列化 Ajax 全称为:“A ...

  6. C#操作XML的方法

    添加命名空间: using System.Xml; 1,先创建一个BookModel类 using System; using System.Collections.Generic; using Sy ...

  7. c#向数据库插入较大数据(SqlBulkCopy)

    因为要向数据库添加一些数据,数据量较大 1.使用sql语句批量提交速度较慢 2.用事物批量提交,速度一般 3.用SqlBulkCopy方法写入数据,速度较快 /// <summary> / ...

  8. websevice中runtime modeler error: Wrapper class com.ws.jaxws.Add is not found问题的解决办法

    查询了网上的资料,有以下解决办法: 1> 先用apt命令将主程序进行编译,然后生成一些java文件2> 升级JDK到版本jdk1.6u17或以后 这两种办法我没有试过,但是试了以下这种方法 ...

  9. Android课程---添加黑名单的练习2(课堂讲解)

    实现黑名单的添加.修改.查询和删除,首先得有封装的3个类,便于使用 BlackNumber.java package com.hanqi.test3; /** * Created by Adminis ...

  10. 【RabbitMQ】HelloWorld

    初识RabbitMQ RabbitMQ是一个消息代理人.它的主要目的很简单:接受并推送消息.我们可以将它理解为一个邮局:当你邮寄一封邮件到邮箱里,可以非常确定邮递员会将它送到收件人手中.打这种比方来将 ...