热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php动态扩展怎么加载(2023年最新分享)

导读:今天编程笔记来给各位分享关于php动态扩展怎么加载的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览:

导读:今天编程笔记来给各位分享关于php动态扩展怎么加载的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:


  • 1、linux下用phpize给PHP动态添加扩展


  • 2、PHP的扩展模块怎么添加?


  • 3、php 怎么安装扩展


  • 4、PHP扩展不加载问题,怎么解决


  • 5、“PHP中扩展库”是什么意思?如何加载?

linux下用phpize给PHP动态添加扩展

使用php的常见问题是:编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想删除目录重装,别说,php还真有这样的功能。

我没有在手册中看到。

如我想增加bcmath支持,这是一个支持大整数计算的扩展。windows自带而且内置,linux本类函数仅在

PHP

编译时配置了

--enable-bcmath

时可用(引号内是手册中的话)

幸好有phpize,

方法是,要有与现有php完全相同的php压缩包。我用的是php-5.2.6.tar.gz。

展开后进入里面的ext/bcmath目录

然后执行/usr/local/php/bin/phpize,这是一个可执行的文本文件,要确保它在系统中

会发现当前目录下多了一些configure文件,

如果没报错,则

Php代码

./configure

--with-php-cOnfig=/usr/local/php/bin/php-config

如果你的php安装路径不是默认的,要改。

如果没有报错,则make,再make

install

,然后它告诉你一个目录

你把该目录下的bcmath.so拷贝到你php.ini中的extension_dir指向的目录中,

修改php.ini,在最后添加一句extension=bcmath.so

重启apache.

PHP的扩展模块怎么添加?

php安装好后,可能在初次安装时,会有些模块会有遗漏,但是我们又不想重新编译php,因为耗时是比较长的。我们可不可以在不重新编译安装php的情况下,来为php单独添加某一个模块呢?查找资料,发现还是有方法的,重点就是phpize了,于是写了这篇文章.

下面我们就以单独为php加载mysqli模块为例,演示如何动态为php添加模块。

1、找到php原码安装文件

2、cd /home/php/ext/myslqi

3、运行 /usr/local/php/bin/phpize

4、/configure –with-php-cOnfig=/usr/local/php/bin/php-config

5、make make install

6、安装完成之后会在系统/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/这个目录下面生成mysqli.so的库文件

7、编辑php.ini文件,指定php到哪人目录读取模块

vi /usr/local/php/etc/php.ini

extension_dir=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613″

extension=mysqli.so

8、重启php服务 /usr/local/php/sbin/php-fpm restart

7、/usr/local/php/bin/php -m|grep mysqli 查看mysqli.so是否存在

如果步骤正确,你的人口也不差的情况下,应该这样php的动态模块加载就完成了。

php 怎么安装扩展

在windows平台上,主要是三个步骤:

1、下载php扩展库文件;

一般在 上就有下载信息。

2、解压缩文件,将*.dll文件复制到PHP程序主目录下的“ext”或者“extension”目录。

3、打开php.ini文件,在“Dynamic Extensions”配置段中加上“extension=*.dll”,关闭文件,重新启动一下服务器就可以加载成功了。

PHP扩展不加载问题,怎么解决

方法一(已通过测试)已经内置有php_curl.dll,在ext目录下,此DLL用于支持SSL和zlib.

1.在php.ini中找到有extension=php_curl.dll, 去掉前面的注释.

2.设置extension_dir=c:\php\ext, 刷新PHP页面时报错, 说找不到模块php_curl.dll.

拷贝php_curl.dll 到windows\system32,还是同样的错.

3.在网上找了一下,需要将:

libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll

都拷贝到system32目录下,重启apache即可.

方法二也可试试:

1.这个php_curl.dll就依赖两个文件(ssleay32.dll和libeay32.dll)如果这两个文件没有配置对那么就会提示找不到此动态库,这两个文件在php的目录下面。

2.解决办法:在Apache的httpd.conf的文件中配置一下:

LoadFile "D:/webserver/php/ssleay32.dll"

LoadFile "D:/webserver/php/libeay32.dll"

3.然后重启一下apache服务就ok了。

“PHP中扩展库”是什么意思?如何加载?

扩展库是php扩展的功能,比如php本来不支持操作某种功能 ,但在新版本想对它提供支持,就以扩展的方式来提供,这样,我们在配置php时,如果我们不用此功能,我们就可以让php不加载他.从而节省服务器资源.提供其性能\x0d\x0a php的扩展库一般放在php目录下的ext目录里.你在网上下载的php压缩包解压后应该可以看到.\x0d\x0a php.ini中的 extension_dir 用来指定你的扩展名的地址 。\x0d\x0a php.ini中有一排像 ;extension="xxxxxx.dll" 的内容就是用来配置让你的php运行环境支持什么不支持什么。\x0d\x0a以下为php.ini中的剪切段\x0d\x0a------------------------------\x0d\x0a;extension=php_bz2.dll\x0d\x0a;extension=php_curl.dll\x0d\x0a;extension=php_dba.dll\x0d\x0a;extension=php_dbase.dll\x0d\x0a;extension=php_exif.dll\x0d\x0a;extension=php_fdf.dll\x0d\x0a;extension=php_gd2.dll //php对图片操作的扩展\x0d\x0a;extension=php_gettext.dll\x0d\x0a;extension=php_gmp.dll\x0d\x0a;extension=php_ifx.dll\x0d\x0a;extension=php_imap.dll\x0d\x0a;extension=php_interbase.dll\x0d\x0a;extension=php_ldap.dll\x0d\x0a;extension=php_mbstring.dll\x0d\x0a;extension=php_mcrypt.dll\x0d\x0a;extension=php_mhash.dll\x0d\x0a;extension=php_mime_magic.dll\x0d\x0a;extension=php_ming.dll\x0d\x0a;extension=php_msql.dll\x0d\x0a;extension=php_mssql.dll //php操作mssql (sql server)数据库的扩展\x0d\x0a;extension=php_mysql.dll //php操作mysql数据库的扩展\x0d\x0a------------------------------\x0d\x0a要让php支持某种功能,把extension前面的 " ; "号去掉,重启apache或iis即可。

结语:以上就是编程笔记为大家介绍的关于php动态扩展怎么加载的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。


推荐阅读
author-avatar
狼哥2502934093
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有