标签: php

共找到了702个结果

[ PHP 内核与扩展开发系列] Array 与 HashTable:在内核中操作数组

博客

当你在扩展中使用 HashTable 时候,大部分情况下是要存储用户端的变量,就像 PHP 语言中数组那样。为此,内核中已经准备好了...

由 学院君 发布于6年前    浏览数: 5559    点赞数: 2

[ PHP 内核与扩展开发系列] Array 与 HashTable:操作 HashTable 的 API

博客

Zend 把与 HashTable 有关的 API 分成了好几类以便于我们查找,这些 API 的返回值大多都是常量SUCCESS 或...

由 学院君 发布于6年前    浏览数: 7413    点赞数: 4

[ PHP 内核与扩展开发系列] Array 与 HashTable:数组与链表

博客

我们在评选各种数据结构时,往往会考虑我们需要处理的数据规模以及需要的性能。下面让我们简要的看一看 C 语言中的数组和链表。 数组...

由 学院君 发布于6年前    浏览数: 6146    点赞数: 3

[ PHP 内核与扩展开发系列] 函数的参数:arginfo 与类型绑定

博客

在前面的章节中我们已经介绍过 arginfo 了,下面我们看一下如何通过其实现类型绑定,但这个特性只能在 Zend Engine 2...

由 学院君 发布于6年前    浏览数: 6416    点赞数: 1

[ PHP 内核与扩展开发系列] 函数的参数:zend_parse_paramenters

博客

基本参数 最简单的获取函数调用者传递过来的参数便是使用 zend_parse_parameters() 函数。 zend_pa...

由 学院君 发布于6年前    浏览数: 6284    点赞数: 2

[ PHP 内核与扩展开发系列] 函数返回值:引用参数与函数的执行结果

博客

一个函数的执行结果要返回给调用者,除了使用 return 功能,还有一种办法,那就是以引用的形式传递参数,然后在函数内部修改这个参数...

由 学院君 发布于6年前    浏览数: 5926    点赞数: 2

[ PHP 内核与扩展开发系列] 函数返回值:一个特殊的参数 —— return_value

博客

引入 return_value PHP 语言中函数的返回值是通过 return 来完成的,就像下面的程序: <?php ...

由 学院君 发布于6年前    浏览数: 7850    点赞数: 3

[ PHP 内核与扩展开发系列] 第一个 PHP 扩展:编写函数

博客

前面我们已经生成好了一份扩展框架,但它是没有什么实际作用。一个扩展的作用可大了去了,既可以操作 PHP 中的变量、常量,还可以定义函...

由 学院君 发布于6年前    浏览数: 7376    点赞数: 3

[ PHP 内核与扩展开发系列] 第一个 PHP 扩展:编译扩展

博客

我们已经在上一节准备好了需要编译的源文件,接下来需要的便是把它们编译成目标文件了。 在 *nix 下编译安装 第一步:我们需要...

由 学院君 发布于6年前    浏览数: 7322    点赞数: 3

[ PHP 内核与扩展开发系列] 第一个 PHP 扩展:扩展的基本结构

博客

每一个 PHP 扩展都至少需要两个文件:一个配置文件和一个源文件。配置文件用来告诉编译器应该编译哪几个文件,以及编译本扩展是否需要的...

由 学院君 发布于6年前    浏览数: 8066    点赞数: 1

[ PHP 内核与扩展开发系列] 配置编译环境并编译安装 PHP

博客

准备工作 从一个 PHP 程序员,到一个想为 PHP 开发扩展的程序员,此间的进化有一步是跳不过去的,那就是你必须熟知如何编译 P...

由 学院君 发布于6年前    浏览数: 7899    点赞数: 2

[ PHP 内核与扩展开发系列] 内存管理 —— 引用计数

博客

对于 PHP 这种需要同时处理多个请求的程序来说,申请和释放内存的时候应该慎之又慎,一不小心便会酿成大错。另一方面,除了要安全申请和...

由 学院君 发布于6年前    浏览数: 5395    点赞数: 6

[ PHP 内核与扩展开发系列] 内存管理 —— 内存分配与释放

博客

在 PHP 里,我们可以定义字符串变量,比如 <?php $str="hello";?>,$str 这个字符串变量可以被...

由 学院君 发布于6年前    浏览数: 8675    点赞数: 3

[ PHP 内核与扩展开发系列] 变量在内核中的实现 —— 类型转化

博客

现在我们已经可以从符号表中获取用户在 PHP 语言里定义的变量了,是时候该做点其它事情了,举个例子,比如给它来个类型转换。想想 C ...

由 学院君 发布于6年前    浏览数: 5387    点赞数: 2

[ PHP 内核与扩展开发系列] 变量在内核中的实现 —— PHP 变量的创建、存储和检索

博客

创建变量 我们已经知道 PHP 变量在内核中其实是通过 zval 结构来实现的,也初步了解如何设置一个 zval 结构的类型和值。...

由 学院君 发布于6年前    浏览数: 5548    点赞数: 2