`

php开发扩展程序

 
阅读更多

下载php-src 5.6.13版本(试过5.3版本编译不过)

[root]# ./ext_skel --extname=pkey
Creating directory pkey
Creating basic files: config.m4 config.w32 .gitignore pkey.c php_pkey.h CREDITS EXPERIMENTAL tests/001.phpt pkey.php [done].

To use your new extension, you will have to execute the following steps:

1.  $ cd ..
2.  $ vi ext/pkey/config.m4
3.  $ ./buildconf
4.  $ ./configure --[with|enable]-pkey
5.  $ make
6.  $ ./sapi/cli/php -f ext/pkey/pkey.php
7.  $ vi ext/pkey/pkey.c
8.  $ make

编辑config.m4时,去掉下面几行注释

PHP_ARG_ENABLE(pkey, whether to enable pkey support,
Make sure that the comment is aligned:
[  --enable-pkey           Enable pkey support])

PHP_SUBST(PKEY_SHARED_LIBADD)

PHP_NEW_EXTENSION(pkey, pkey.c, $ext_shared)

编辑pkey.c时定义自己的函数和实现

const zend_function_entry pkey_functions[] = {
        //PHP_FE(confirm_pkey_compiled, NULL)           /* For testing, remove later. */
        PHP_FE(getpkey, NULL)   
        PHP_FE_END      /* Must be the last line in pkey_functions[] */
};

PHP_FUNCTION(getpkey)
{
        char *arg = NULL;
        int arg_len, len;
        char *strg;

        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &arg, &arg_len) == FAILURE) {
                return;
        }

        len = spprintf(&strg, 0, "Congratulations! You have successfully modified ext/%.78s/config.m4. Module %.78s is now compiled into PHP.", "pkey", arg);
        RETURN_STRINGL(strg, len, 0);
}

 php.ini中加入extension引入扩展使用即可。

 

分享到:
评论

相关推荐

    php扩展开发与内核应用

    对于那些希望通过PHP扩展来提高应用程序性能和功能的开发人员来说,这门课程提供了一条深入探索PHP内部实现的道路。通过这个项目的迁移和共享,学习者可以加入项目,贡献自己的力量,并且在实践中掌握PHP扩展开发的...

    PHP扩展开发中文教程

    《PHP扩展开发中文教程》是一本专为对PHP扩展开发感兴趣的开发者量身打造的指南。这本书深入浅出地讲解了如何构建PHP的C语言扩展,从而增强PHP的功能和性能。PHP作为一种广泛使用的开源脚本语言,其核心在于其丰富的...

    PHP扩展开发及内核应用

    通过阅读和实践《PHP扩展开发及内核应用》,开发者不仅能掌握PHP扩展的开发技术,还能深化对PHP内核的理解,从而更好地优化和定制PHP应用程序。这是一本对于PHP开发者进阶和提升技能非常有价值的参考资料。

    windows下开发PHP扩展

    2. 进入 d:/php_src/ext 目录,复制 skeleton 文件夹,并重命名为要开发扩展的名字,本例为“linvo” 3. 把二进制包中 dev 目录下的 php5ts.lib 文件,拷入新建的 linvo 目录 第二步:编码 1. 编辑 ...

    PHP扩展开发.pdf

    PHP程序的生命周期可以分为启动、运行和终止三个阶段,而这个生命周期在扩展开发中尤为重要,因为扩展需要在不同的生命周期阶段完成其特定的工作。 在PHP作为Apache模块启动时,会进行一系列初始化操作。在这个初始...

    cygwin windown php扩展开发工具

    在Windows环境下进行PHP扩展开发,通常开发者会遇到各种平台差异问题,因为PHP主要设计于类Unix系统,如Linux。然而,Cygwin提供了一个在Windows上运行Linux/Unix应用程序的解决方案,它创建了一个兼容层,使得...

    PHP程序设计开发使用

    3. **MVC模式**:Model-View-Controller(模型-视图-控制器)架构模式是PHP开发中常用的设计模式。Model处理数据逻辑,View负责展示,Controller协调两者。PHP框架如Laravel、Symfony和CodeIgniter等都支持MVC模式,...

    [本人制作]PHP自定义模块参数-配置前后台扩展开发功能

    在PHP编程中,自定义模块参数和配置前后台扩展开发是提升应用程序灵活性和可定制性的重要手段。PHP作为一门广泛使用的服务器端脚本语言,其强大...在实践中,不断学习和应用这些技术,可以显著提升PHP开发的专业水平。

    shopex多用户版扩展程序

    "Shopex多用户版扩展程序"是一个专为Shopex电子商务平台设计的开发项目,旨在增强其功能并优化用户体验,尤其适合开发者进行学习和提升编程技能。Shopex是一款在中国广泛使用的开源电子商务解决方案,它提供了丰富的...

    基于Linux的Web程序设计——PHP网站开发.rar

    在深入探讨基于Linux的Web程序设计,特别是PHP网站开发之前,我们先理解一下这个压缩包的基本内容。"基于Linux的Web程序设计——PHP网站开发.rar" 提供的是一个php+apache+mysql的项目源代码,这表明它包含了用于在...

    PHP 集成IP扩展

    首先,"PHP 纯真IP扩展"主要是为了实现快速的IP地址查询功能,它允许PHP程序通过扩展直接访问纯真IP数据库(如QQWry),获取IP地址对应的国家和地区信息。这在网站统计、用户定位等方面非常实用,可以提高处理大量IP...

    PHP程序开发范例宝典

    《PHP程序开发范例宝典》是一本专为初学者设计的PHP编程教程,它以其丰富的实例和详尽的解析,成为了PHP初学者的最佳学习伙伴。这本书的核心目标是帮助新手快速掌握PHP语言的基础和进阶知识,从而在Web开发领域找到...

    使用C++11开发PHP7扩展

    1. PHP 可以用 C++ 扩展实现多线程 2. PHP-X 支持 Windows 平台,可以开发Windows的PHP扩展 3. 程序中大量运算的逻辑可以改为 C++ 扩展实现 4. 使用 PHP-X 开发商业软件,避免源码泄漏

    chrome的扩展程序--xdebug

    **Chrome扩展程序Xdebug简介** ...而"Chrome的扩展程序--xdebug"是将Xdebug的功能集成到Chrome浏览器中的一种...合理利用Xdebug和Xdebug Helper,能够显著提升PHP开发的质量和效率,帮助开发者更快地定位问题,优化代码。

    安装php 的bcmath扩展

    如果没有安装该扩展,则可能会导致一些问题,例如在校园超市商城小程序购物车里面商品的价格显示不正确。因此,在本文中,我们将详细介绍如何在 CentOS 7 系统上安装 PHP 的 bcmath 扩展。 一、查看当前系统版本和 ...

    php intl扩展文件

    - intl扩展在处理异常时会抛出`IntlException`,开发过程中需要注意捕获并处理这些异常。 - `intl_error_level`和`intl_get_error_code`函数可以帮助开发者获取错误级别和代码,以便于调试。 6. **国际化最佳实践...

    开源php加密运行扩展,基于screw二次开发,暂时只能在linux下运行.zip

    1. **环境准备**:确保拥有一个合适的Linux环境,包括PHP开发工具(如PHP源码、PHP开发头文件、GCC编译器等)。 2. **代码检出**:使用Git命令检出screw-plus-master仓库,例如`git clone ...

    php7.1 oci8扩展

    **PHP 7.1 OCI8 扩展详解** ...总的来说,PHP 7.1 OCI8 扩展为开发者提供了一个强大的工具,使他们能够在 PHP 应用程序中无缝地集成和操作 Oracle 数据库。正确安装和配置该扩展,将有助于提升开发效率和应用性能。

    PHP开发实践权威指南源码

    【PHP开发实践权威指南源码】是一份针对PHP编程语言深入实践的重要资源,它涵盖了从基础到高级的各种PHP开发技术,旨在帮助开发者提升技能并掌握实际项目中的应用。通过这份源码,我们可以学习到以下几个核心的PHP...

Global site tag (gtag.js) - Google Analytics