为什么要写扩展,这里就不在展开说了,网上有很多这方面的知识,这里只说明下开发一个扩展的几个步骤:
1,cd /usr/local/src/php-5.3.6/ext,切换到php的代码目录下
2,./ext_skel --extname=your_ex_tname 使用ext_skel创建一个扩展的框架
1. $ cd ..
2. $ vi ext/your_ext_name/config.m4
3. $ ./buildconf
4. $ ./configure --[with|enable]-your_ext_name
5. $ make
6. $ ./php -f ext/your_ext_name/your_ext_name.php
7. $ vi ext/your_ext_name/your_ext_name.c
8. $ make
3,安装第二部的提示,修改config.m4
去掉
dnl PHP_ARG_ENABLE(your_ext_name, whether to enable your_ext_name support,
dnl Make sure that the comment is aligned:
dnl [ --enable-your_ext_name Enable your_ext_name support])
修改后为:
PHP_ARG_ENABLE(your_ext_name, whether to enable your_ext_name support,
Make sure that the comment is aligned:
[ --enable-your_ext_name Enable your_ext_name support])
4,编写扩展的代码:
vim your_ext_name.h在PHP_FUNCTION(confirm_your_ext_name_compiled);下面增加声明函数
vim your_ext_name.c编写实现代码
5,编译代码:
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
6,修改php.ini加载your_ext_name.so,重启web server后用phpinfo查看扩展是否加载成功。
分享到:
相关推荐
PHP扩展开发流程是PHP开发者深入理解其内部机制和增强功能的重要途径。以下是一个详细的步骤指南,帮助你了解如何从头开始构建一个PHP扩展。 一、准备环境 1. 安装VC++ 6:这是微软的Visual C++ 6.0编译器,用于...
在IT领域,PHP扩展开发是一项高级技能,它允许开发者深入到PHP引擎的底层,使用C语言来编写自定义的功能模块,从而实现对PHP功能的增强或优化。本教程聚焦于PHP扩展开发,旨在帮助读者掌握如何创建自己的PHP扩展,...
### PHP扩展开发详解 #### 一、引言 在当今高度动态化的Web开发环境中,PHP作为一种流行的服务器端脚本语言,被广泛应用于构建各种类型的网站和应用。然而,随着技术的发展和需求的变化,开发者们经常需要扩展PHP...
### PHP扩展开发详解 #### 一、引言 在当今的Web开发领域中,PHP以其易用性与灵活性成为众多开发者的选择。对于那些希望进一步掌握PHP底层机制或想要为自己的项目定制特定功能的开发者而言,了解如何开发PHP扩展是...
**深入理解PHP内核,PHP扩展开发** PHP作为一种流行的服务器端脚本语言,广泛应用于Web开发,其性能和灵活性在很大程度上取决于其内核机制。深入理解PHP内核是优化代码、提高性能以及进行扩展开发的基础。这篇内容...
【PHP扩展开发】 PHP扩展是用C语言编写的,用于增强PHP的核心功能,提供新的数据类型、函数或者优化性能。如果你打算开发PHP扩展,首先你需要对C语言有深入理解,特别是指针的概念,因为扩展开发中会频繁用到。此外...
在PHP开发中,PDO(PHP Data Objects)是一个用于数据库访问的扩展,提供了统一的API来访问多种数据库系统。而PDO_MYSQL是PDO扩展中的一个驱动,专门用于与MySQL数据库进行交互。Magento是一款知名的开源电子商务...
在本文中,我们将深入探讨如何使用C语言开发PHP扩展,并将其整合到PHP环境中。这是一个涉及多步骤的过程,从设置开发环境到编写C代码并最终在PHP中调用这些扩展。 首先,我们需要建立开发环境。这包括搭建PHP开发...
本篇文章将详细介绍如何使用CMake来开发PHP扩展,帮助开发者更好地理解和实践这一过程。 首先,理解PHP扩展的本质:它们是用C或C++编写的库,与PHP解释器交互,提供了新的数据类型、函数和行为。CMake作为构建工具...
安装 PHP 的 bcmath 扩展非常简单,只需要按照上述步骤进行安装和配置即可。在实际开发中,bcmath 扩展的应用非常广泛,例如在电子商务系统中,需要使用 bcmath 扩展来进行小数点精度计算,以确保价格的正确性。
本文将详细介绍PHP扩展开发和内核应用的核心知识点。首先,关于PHP的生命周期,它是从SAPI(Server API)开始的,涉及PHP的启动和终止过程。在这一过程中,线程安全是不可忽视的部分,尤其是在多线程环境下。PHP变量...
3. PHP扩展开发的一般步骤 3.1 准备部分 首先,需要安装PHP开发环境,包括PHP源码、Zend开发库以及必要的构建工具,如autoconf和make。 3.2 建立扩展骨架 使用PHP的ZenD API工具(如`ext_skel`)生成扩展的基础...
描述中提到的“用于php扩展开发框架生成,从php5.6.11源码中拿出来的”,意味着`ext_skel`是直接从PHP源代码仓库提取的,它是构建自定义PHP扩展的第一步。通常,开发扩展时,首先需要运行`ext_skel`,提供必要的参数...
首先,sqlsrv是微软提供的一个PHP扩展,用于连接和操作SQL Server数据库。pdo_sqlsrv则是PHP Data Objects (PDO) 的一个驱动,提供了一种统一的接口来访问多种数据库,包括SQL Server。 在开始安装之前,确保你的...
在PHP商城项目后台开发中,涉及的技术点广泛且深入,涵盖了数据库设计、用户认证与授权...以上就是PHP商城项目后台开发的主要步骤,每个环节都需要细致入微的思考和扎实的编程基础,确保商城系统能够稳定、高效地运行。
Swoole是一个高性能的PHP扩展,它提供了异步、非阻塞的网络通信框架,使得PHP可以用于开发服务器端的高性能应用,如Websocket服务、长连接服务器等。 描述中提到的“安装hyperf/swow-skeleton用php8.1”是指使用PHP...
在PHP开发中,Redis是一个非常流行的键值存储系统,常用于缓存和会话管理。在PHP5.6版本中,为了充分利用Redis的功能,我们需要安装并配置PHP的Redis扩展。以下是一个详细的步骤指南,帮助您完成这个过程。 首先,...