- 博客(6)
- 资源 (8)
- 收藏
- 关注
原创 PHP扩展开发-v1.0
1 前言这篇文章是我个人的学习笔记,我把这篇文章送给所有喜欢PHP语言,喜欢PHP扩展开发的同行、同学们。 2 前期准备闲话不和大家撤了,如果您想学习php的扩展开发,相信您对php基础知识已经有了一
2013-02-19 14:30:31 3516 2
原创 PHP扩展开发-08-数组的使用以及HashTable简介
1 数组本节我们讲一下php的数组,在php中,数组使用HashTable实现的。本节中我们先详细的介绍一下HashTable,然后再讲讲如何使用HastTable1.1 变长结构体所谓的变长结构体,其实是我们C语言结构体的一种特殊用法,并没有什么新奇之处。我们先来看一下变长结构体的一种通用定义方法。typedef struct bucket {
2013-02-04 13:05:44 3226 2
原创 PHP扩展开发-07-函数调用
1 函数返回值终于讲完zval了,前面我们讲到了函数的定义和使用,但是我们没有讲函数的返回值。因为C扩展中,函数的返回值类型为zval的,所以我们把这一节放在了这里进行讲解。本节任务,我们写一个简单的计算器,完成加减乘除运算,要求:编写函数calculate(num1, num2, opt),我们希望完成num1 opt num2= ?的运算。我们看一下完成上面任务的代码:
2013-02-04 00:16:57 2191 3
原创 PHP扩展开发-06-变量的定义和使用
1 zval结构分析1.1 初识zval我们先来看一下zval的定义:typedef union _zvalue_value{ long lval; /* long value */ double dval; /* double value */ struct { char *val;
2013-02-03 23:10:01 977
原创 PHP扩展开发-05-参数接收
1 参数接收前面我们讲到了php扩展开发的大体架构,本节我们介绍扩展如何接收php脚本中传入的参数。1.1 普通参数接收任务:写一个扩展,输出php脚本传入的参数。例如php –r “echo hello(‘param test.’);” 将要输出param test.首先我们建立一个paramtest的扩展,建议、编译、安装、测试过程不再赘述。首
2013-02-03 10:39:59 2592
原创 PHP扩展开发-04-全局变量以及部分宏分析
1.1 抛砖引玉将这一节的目的是想交给大家,如和声明一个变量。使得这个变量针对每次请求独立,也就是说,同一次请求我们访问的变量是同一个,不同的请求我们使用的变量不是同一个。说道这里我先抛出一个问题:既然要实现上面的要求,那么我们该怎么办呢?我应该在哪里声明我的全局变量呢?还记得SAPI简介那一张吗?SAPI的实现有三种方式,单进程,多进程,多线程,但是对于每一次而言,都必须
2013-02-01 15:46:04 4337 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人