首先下载一份PHP的源码,并上传到centos服务器上
源码下载地址:https://github.com/php/php-src
 
然后在命令行进入到源码路径下的ext目录
然后创建扩展项目
[root@myhost ext]# ./ext_skel --extname=sayhello
sayhello就是扩展项目的名字
创建完成之后ext目录下会多一个sayhello的文件夹,这个文件夹就是我们的扩展项目
 
 
在php_sayhello.h文件的最后,加入如下代码
在sayhello.c中加入如下代码:
 
然后改一下如下函数
打开config.m4文件修改如下几行代码,主要是取消注释,下图是改过之后的
 
 
在命令行进入sayhello目录下
执行如下命令
然后执行如下命令
注意安装php的方式不同php-config的路径也有可能不同
然后执行make命令
然后执行make install指令
 
此指令执行完之后,你就知道你的扩展模块被安装在哪个目录下了
 
然后修改/etc/php.ini文件
 
然后重启apache服务器
 
然后查看php的模块
你会看到我们的模块已经被加载进来了
 
然后写一个测试页面
代码如下
<?php
$a = sayhello("liulun");
echo "<br>";
echo $a;
?>;
然后把这个页面上传到如下目录
/var/www/html/
就可以看到执行情况
 
参考了如下两个文章
(这两个文章写的都不够好,建议读者不要看)
 
 
 
 
 
 
 
 

最新文章

  1. Maven assembly 打包
  2. MyBatis学习总结(二)——使用MyBatis对表执行CRUD操作(转载)
  3. javaScript事件(二)事件处理程序
  4. linux下安装mongodb(php版本5.3)
  5. centos7.0 手动编译 lamp环境
  6. JS 内部传参
  7. overflow-x和overflow-y其中一个设置为visible时的奇怪现象
  8. Vigen&#232;re 密码NOIP 2012 提高组 第一天 第一题
  9. JavaScript: Class.method vs Class.prototype.method
  10. 3月25日html(六) Javascrip
  11. 8.Java 加解密技术系列之 PBE
  12. 第二届强网杯-simplecheck
  13. listview 与 button 焦点 在item添加下列属性
  14. 使用ssh keys实现免验证登陆远程服务
  15. bzoj1452 [JSOI2009]Count ——二维树状数组
  16. SpringCloud之初识Zuul(网关)---动态路由,权限验证
  17. Anaconda的下载与安装
  18. Flutter从零到∞学习笔记
  19. 给JDK提的一个bug(关于AbstractQueuedSynchronizer.ConditionObject)
  20. mysql并行执行--缩短主从同步时延

热门文章

  1. boost学习 泛型编程之traits 学习
  2. linux 查看信息-进程&amp;用户&amp;服务&amp;程序
  3. Python中添加中文注释报错SyntaxError: Non-UTF-8 code starting with &#39;\xc1&#39;
  4. maven +bootstrap+ssm
  5. python发送邮箱
  6. centos 安装tmux
  7. sql server常用字符串函数
  8. Paper | Contrast Limited Adaptive Histogram Equalization
  9. [solution] JZOJ-5458 质数
  10. cobub razor 安装及使用