导航:首页 > 编程语言 > php调用dll文件

php调用dll文件

发布时间:2022-05-14 08:07:15

php里使用DLL内的方法

http://www.php.net/manual/zh/faq.com.php
官方文档都说了,不行的哦。

另外DLL的WebService,那应该是C# or VB .net的吧,既然是webservices,那你可以尝试通过http方式和这个WebService交换数据吧。(简单的说就是2个不同的网站通过http交换数据,就像哪种采集程序、或者web api,如:sina api,微信api)

⑵ PHP如何调用.dll文件呀

如果你确定你的扩展*.dll能在php
正确使用的话,首先需要把这个.dll文件复制到php的安装目录\ext文件夹下,然后修改php.ini文件,在
;;;;;;;;;;;;;;;;;;;;;;
;
Dynamic
Extensions
;
;;;;;;;;;;;;;;;;;;;;;;
配置节上,按照格式extension
=
a.dll添加该dll文件的引用,然后重新启动承载php的web服务器即可。

⑶ php能够调用C或C++写的.dll文件吗 - PHP进阶讨论

可以我写过一个调用SAP BO的COM,要调用必须先安装好COM组件的,在注册表查出组件名字(如果你不清楚组件名字的话)我把我写过的函数给你看看
/**
* 加载COM组件
*/
private function createCompanyObject() {
$company = false;
try {
$company = new COM("SapBobsCom.Company");//这样就可以获取COM组件了
} catch(Exception $e) {
$this->errorMsg = $e->getMessage();
}
return $company;
}

⑷ php文件如何转换成.dll文件再被php程序调用不可以直接转的话能通过其它什么方法转换呢

不能直接转,语法不同的

用C之类的可以封装你的函数,然后做成这种dll拓展文件

⑸ thinkPHP如何使用外部dll文件里面的方法

先确定这个dll是扩展还是 com组件。
否则是没办法使用的。
扩展直接放到windows系统php的目录,然后php.ini加入这个dll就可以了。
com组件 用php操作com的类进行调用。
其他的dll 无法调用

⑹ 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能够调用C或C++写的.dll文件吗

这是别人用过的一些例子:1。查看CPU荷载:[ol][*]ExecQuery(\"SELECT * FROM Win32_Processor\");[*][*]foreach($processor as $obj){[*][*]? $cpu_load_time = $obj-LoadPercentage;[*][*]}[*][*]echo $cpu_load_time;[*][*]?[/ol]2。调用自定的dll组件:1) 创建ActiveX dll组件 -- [ol][*]Public Function hello() As String[*]? hello = \"Hello World!\"[*]End Function[/ol]并存为\"test.dll\" 文件2) 用regsvr32.exe注册此组件regsvr32 test.dll 3) 在PHP内调用此dll组件:[ol][*]hello(); // Call the \"hello()\" 方法[*]echo $output; // 显示Hello World! (so this comes from the dll!)[*]?[/ol]

⑻ 如何处理PHP调用外部DLL

就是修改服务端axis bug,首先想到的就是自定义一个servlet然后继承AxisServlet,改写getSoapAction 代码,但是会发现getSoapAction是private的,所以只能整个AxisServlet代码修改getSoapAction部分(只需把写AxisFault部分代码放在最后面,注意上面中的if语句中,soapAction.length()==0 要改一下,因为如果soapAction为空这样会抛出空指针异常的。),然后修改web.xml中配置的servlet为自定义的类路径。这样试试呢,毕竟我在后盾人视频平台看见的类似的问题讲述,加上我自己的理论,你试试吧希望能帮到你

⑼ php怎么调用 dll动态库

做成 php 的扩展,就可以调用了。 把做好的dll文件放在php的扩展模块路径下面,然后在php.ini文件中追加 extension=extname.dll 如果dll文件没问题,接着就可以在php文件中直接调用其中的函数了。 以下这个地址的文章教你怎么做php的扩展: http...

⑽ php调用dll文件里面的函数

1、首先从www.php.net网站上下载php源码,此处以php-5.2.17版本为例,下载后解压至E:盘根目录下(目录可以自己随意定)。
2、下载安装VC++ 6.0,因为PHP源码是利用6.0版本写的,所以使用这个版本编译不会出现意外,别的版本未测试。
3、把VC++ 6.0安装目录中的 Microsoft Visual Studio\Common\MSDev98\Bin 绝对路径添加到系统环境变量中。
4、进入E:\php-5.2.17\ext目录,复制skeleton文件夹,并重命名为要开发扩展的名字,本例为“myfun”。
5、重命名skeleton.c为myfun.c,skeleton.dsp为myfun.dsp
6、编辑myfun目录中的php_skeleton.h、myfun.c、myfun.dsp这三个文件,替换内容中所有extname为myfun,EXTNAME为MYFUN。(一定要严格区分大小写)
下面就进入到编码阶段:
7、打开php_skeleton.h文件(头文件),找到PHP_FUNCTION(confirm_myfun_compiled);,在 PHP_FUNCTION(confirm_myfun_compiled);,下面编写PHP_FUNCTION(mb_MessageBox);,声 明一个mb_MessageBox函数,此函数的作用仅是输出js弹出一个alert消息框,用于测试。
8、下面定义函数入口,打开myfun.c文件,找到PHP_FE(confirm_myfun_compiled,NULL) ;,在下面编写 PHP_FE(mb_MessageBox,NULL),此处注意一下,PHP_FE是定义的一个宏,所以后面不用加引号。
9、在myfun.c最后面编写函数的实体部分:

PHP_FUNCTION(mb_MessageBox)
{
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, "<script>alert('%s')</script>",arg); //此处正是输入的js代码
RETURN_STRINGL(strg, len, 0);
}

到这代码书写就完成了,下面开始编译:
10、开始->运行,输入CMD,打开命令行窗口。
11、进入myfun的目录,输入 msdev myfun.dsp /MAKE "myfun - Win32 Release_TS",回车编译。
12、如果没有错误,在E:\php-5.2.17下会生成一个Release_TS文件夹,在里面就可以找到php_myfun.dll文件。
至此扩展dll开发完成,下面在php中进行测试:
13、把php_myfun.dll复制到原php目录中的ext文件夹内。
14、打开php.ini文件,添加当前dll的扩展 extension=php_myfun.dll
15、重启apache,在网站目录下新建一文件,输入以下内容:
<?php
echo mb_MessageBox("测试PHP扩展DLL by 马犇");
?>
浏览即可看到效果

阅读全文

与php调用dll文件相关的资料

热点内容
手机号码如何加密 浏览:424
沈阳程序员培训学校 浏览:538
一般服务器如何配置 浏览:895
图片怎样加密发邮件 浏览:619
万虹电脑文件夹密码忘记了怎么办 浏览:631
rc108单片机 浏览:867
战雷如何改变服务器 浏览:674
mactelnet命令 浏览:51
压缩袋压缩了拿出来 浏览:401
安卓手机相机怎么设置权限 浏览:121
美女程序员转行做主播 浏览:671
办理解压房产 浏览:575
道路工程概论pdf 浏览:388
超棒数学速算法大全 浏览:937
小米易语言登录源码 浏览:31
砖墙内加密钢筋 浏览:992
乡关何处pdf 浏览:84
小猪领赞小程序源码 浏览:336
python曲线如何原路返回 浏览:432
pdf快速看图破解版 浏览:295