php加载dll
㈠ php5.6配置加载php5apache2_4.dll
如果php安装目录里没有php5apache2_2.dll,一定是下载的版本不对。去php官网下载,downloadapache和php都安装完后,要分别配置apache的httpd.conf文件和php.ini文件。这个在网上有很多教程的。。至于大家都反映的找不到php5apache2_2.dll,其实是像我说的那样php版本下错了。
㈡ PHP如何调用.dll文件呀
如果你确定你的扩展*.dll能在php
正确使用的话,首先需要把这个.dll文件复制到php的安装目录\ext文件夹下,然后修改php.ini文件,在
;;;;;;;;;;;;;;;;;;;;;;
;
Dynamic
Extensions
;
;;;;;;;;;;;;;;;;;;;;;;
配置节上,按照格式extension
=
a.dll添加该dll文件的引用,然后重新启动承载php的web服务器即可。
㈢ thinkPHP如何使用外部dll文件里面的方法
先确定这个dll是扩展还是 com组件。
否则是没办法使用的。
扩展直接放到windows系统php的目录,然后php.ini加入这个dll就可以了。
com组件 用php操作com的类进行调用。
其他的dll 无法调用
㈣ PHP如何用调用C#编写的DLL
1.创建一个 C# Class Library ,命名为:HelloWorld
2.打开项目的属性,在点选左边的 "Application"(就是第一个tab) , 然后点击Assembly Information 按钮 ,在弹出的Dialog中, 必须在底部勾上: Make assembly COM-visible !否则 , 这个dll将不能以COM方式访问 .( 也可以在代码中的类声明中写上[ComVisible(true)] , 效果一样,需要增加using System.Runtime.InteropServices;引用)
㈤ PHP可否调用动态链接库
当php.ini中的enable_dl选项为on时,可以使用下面这个函数来加载dll文件:
int dl ( string library ),但是当系统处于安全模式时,即使enable_dl为on,也无法使用.
<?php
// Example loading an extension based on OS
if (!extension_loaded('sqlite')) {
if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) {
dl('php_sqlite.dll');
} else {
dl('sqlite.so');
}
}
// Or, the PHP_SHLIB_SUFFIX constant is available as of PHP 4.3.0
if (!extension_loaded('sqlite')) {
$prefix = (PHP_SHLIB_SUFFIX == 'dll') ? 'php_' : '';
dl($prefix . 'sqlite.' . PHP_SHLIB_SUFFIX);
}
?>
这属于动态加载dll文件,还有一种方法就是,将你的dll文件放到php的ext目录下,然后在你的php.ini文件里面找到一大堆:extension=php_xxxx.dll那里,找个空行,按照这个写法写上去,注意前面不要有";"号.重启apache后,就可以调用里面的东西了.
㈥ php添加扩展dll文件
你这个dll是你自己编译出来的还是网上下载的?请确保和你当前的php版本相符,然后放到ext目录,打开php.ini加上一句extension=xx.dll,最后重启Apache···然后看看你的phpinfo有没有相应的信息
㈦ “PHP中扩展库”是什么意思如何加载
扩展库是php扩展的功能,比如php本来不支持操作某种功能 ,但在新版本想对它提供支持,就以扩展的方式来提供,这样,我们在配置php时,如果我们不用此功能,我们就可以让php不加载他.从而节省服务器资源.提供其性能x0dx0a php的扩展库一般放在php目录下的ext目录里.你在网上下载的php压缩包解压后应该可以看到.x0dx0a php.ini中的 extension_dir 用来指定你的扩展名的地址 。x0dx0a php.ini中有一排像 ;extension="xxxxxx.dll" 的内容就是用来配置让你的php运行环境支持什么不支持什么。x0dx0a以下为php.ini中的剪切段x0dx0a------------------------------x0dx0a;extension=php_bz2.dllx0dx0a;extension=php_curl.dllx0dx0a;extension=php_dba.dllx0dx0a;extension=php_dbase.dllx0dx0a;extension=php_exif.dllx0dx0a;extension=php_fdf.dllx0dx0a;extension=php_gd2.dll //php对图片操作的扩展x0dx0a;extension=php_gettext.dllx0dx0a;extension=php_gmp.dllx0dx0a;extension=php_ifx.dllx0dx0a;extension=php_imap.dllx0dx0a;extension=php_interbase.dllx0dx0a;extension=php_ldap.dllx0dx0a;extension=php_mbstring.dllx0dx0a;extension=php_mcrypt.dllx0dx0a;extension=php_mhash.dllx0dx0a;extension=php_mime_magic.dllx0dx0a;extension=php_ming.dllx0dx0a;extension=php_msql.dllx0dx0a;extension=php_mssql.dll //php操作mssql (sql server)数据库的扩展x0dx0a;extension=php_mysql.dll //php操作mysql数据库的扩展x0dx0a------------------------------x0dx0a要让php支持某种功能,把extension前面的 " ; "号去掉,重启apache或iis即可。
㈧ php怎么调用 dll动态库
做成 php 的扩展,就可以调用了。 把做好的dll文件放在php的扩展模块路径下面,然后在php.ini文件中追加 extension=extname.dll 如果dll文件没问题,接着就可以在php文件中直接调用其中的函数了。
㈨ 急!php中调用win32的DLL命令怎样写
1.需要加载php扩展 dl("php_w32api.dll"); 2.从你的dll里面导出函数,假定该函数在dll里面被声明为FuncDll,并且返回值是int类型 w32api_register_function("函数所在的dll", "FuncDll", "int"); 3.好了,现在你可以调用它了 $result = FuncDll();
㈩ 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的文件中配置一下:
1
2
LoadFile "D:/webserver/php/ssleay32.dll"
LoadFile "D:/webserver/php/libeay32.dll"
3.然后重启一下apache服务就ok了。
在修改php.ini的时候会出现一些小问题 导致扩展无法加载
比如php.ini中明明开启了php_mysql.dll但是 运行项目的时候却报错说不支持php_mysql 这种情况一定是系统找不到php_mysql.dll这个文件
首先检查 php.ini 中的extension_dir的路径是否正确 注意斜杠方向
系统变量中要加D:\php5.5.38 和D:\php5.5.38 \ext
然后检查apache中的配置
如果配置都是正确 但还是报错,而且下图的loaded configuration file没有显示
运行phpinfo.php 如图php无法加载扩展的解决方法
表示系统可以加载php.ini这个文件,如果没有则表示该文件没有加载
最后有个细节要注意 php.ini是根据php.ini-development这个文件复制修改的 如果在删除development的时候留有空格 则php.ini是无法加载的
比如ini后面有空格 则这个文件就无法加载