導航:首頁 > 編程語言 > 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曲線如何原路返回 瀏覽:431
pdf快速看圖破解版 瀏覽:294