PHP调用WCF小结,调用wcf小结_PHP教程
PHP调用WCF小结,调用wcf小结
新工作第三周,做了3年多的.Net,突然急转弯做PHP,漂移过弯,速度180迈
由于数据的整合,在项目中不得不使用PHP调用WCF
一头的雾水,网上相关的资料少又少,在phpChina发个帖子,还没有人回,看来博客园才是永远的家
感谢dudu大神的不厌其烦的回复帮助,Thanks
==========以下是正文===============
使用PHP调用WCF非常简单,所有的过程,只需要两个字,仔细
一、准备工作:
1.soap.dll
查看PHP安装包里面的ext 是否有 php_soap.dll [PHP自动集成的,一般情况下都会存在,不存在可以在网上下载]
2.修改php.ini文件
第一步确认后,继续找到PHP的配置文件。由于每个人的环境不同,比如有的是使用集成开发环境,一键安装
有的同学是自己分别安装,可能php.ini的位置会不同。此时的做法是使用 phpinfo()进行查看
找到文件后,打开文件,
查找到
;extension=php_soap.dll
这一行,然后将前面的分号去掉。
如果没有找到这一行,不用担心,自己手动添加这一行也可以.
3.重启apach
二、调用WCF
以上123步完成后,我们的准备工作就完成了,接下来就是写代码
假设大家都会WCF,都有PHP的基础
1.发布一个WCF以备调用
下面是WCF的两个方法
public string SayHello()
{
return "Hello World";
}
public string GetData(string value)
{
return "You entered is : " + value;
}
2.PHP端调用
$wcfURL = 'http://192.168.3.102/Service1.svc?wsdl';//【这是WCF的地址】
$wcfClient = new SoapClient ( $wcfURL );
$result1 = $wcfClient->SayHello ();
print_r ( $result1 );
echo '
';
echo $result1->SayHelloResult;//这里是SayHello+Result合在一起写,具体原因我不知道
以上PHP代码正常情况下应该输出如下
stdClass Object ( [SayHelloResult] => Hello World )
Hello World
第一个方法就调用成功了
我们继续调用有参数的方法
这个时候一定要用WCF测试客户端进行测试WCF
看到我一开始的WCF的方法,参数是 GetData(string value),而这里显示t,这是因为在WCF是同事帮我写的,他偷懒,直接在定义的时候写的 GetData(string t)。为了这个偷懒,付出了沉重的代码,整整10分钟!
详情连接:http://q.cnblogs.com/q/71331/
以下是修改后的PHP代码
$args = array('t' => '312'); $wcfClient->GetData($args);<br />echo $result->GetDataResult;<br />echo '<br>';<br />print_r ( $result );
以上正常输出应该是
You entered is :312
stdClass Object ( [GetDataResult] => You entered is : 312)
以上就完成了PHP对WCF的调用了,当然,有些小伙伴会问高级一点的呢,比如整个类什么的作为参数,返回个类什么的................弱弱的说,还没有玩到那么高级的..
再次谢谢dudu
以下为参考文章:http://blog.csdn.net/love__coder/article/details/6067611
http://www.cnblogs.com/tianbang/archive/2012/05/07/2489149.html

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Laravel memudahkan mengendalikan data sesi sementara menggunakan kaedah flash intuitifnya. Ini sesuai untuk memaparkan mesej ringkas, makluman, atau pemberitahuan dalam permohonan anda. Data hanya berterusan untuk permintaan seterusnya secara lalai: $ permintaan-

Ini adalah bahagian kedua dan terakhir siri untuk membina aplikasi React dengan back-end Laravel. Di bahagian pertama siri ini, kami mencipta API RESTful menggunakan Laravel untuk aplikasi penyenaraian produk asas. Dalam tutorial ini, kita akan menjadi dev

Pelanjutan URL Pelanggan PHP (CURL) adalah alat yang berkuasa untuk pemaju, membolehkan interaksi lancar dengan pelayan jauh dan API rehat. Dengan memanfaatkan libcurl, perpustakaan pemindahan fail multi-protokol yang dihormati, php curl memudahkan execu yang cekap

Laravel menyediakan sintaks simulasi respons HTTP ringkas, memudahkan ujian interaksi HTTP. Pendekatan ini dengan ketara mengurangkan redundansi kod semasa membuat simulasi ujian anda lebih intuitif. Pelaksanaan asas menyediakan pelbagai jenis pintasan jenis tindak balas: Gunakan Illuminate \ Support \ Facades \ http; Http :: palsu ([ 'Google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

Adakah anda ingin memberikan penyelesaian segera, segera kepada masalah yang paling mendesak pelanggan anda? Sembang langsung membolehkan anda mempunyai perbualan masa nyata dengan pelanggan dan menyelesaikan masalah mereka dengan serta-merta. Ia membolehkan anda memberikan perkhidmatan yang lebih pantas kepada adat anda

Dalam artikel ini, kami akan meneroka sistem pemberitahuan dalam rangka kerja web Laravel. Sistem pemberitahuan di Laravel membolehkan anda menghantar pemberitahuan kepada pengguna melalui saluran yang berbeza. Hari ini, kami akan membincangkan bagaimana anda boleh menghantar pemberitahuan ov

Artikel membincangkan pengikatan statik lewat (LSB) dalam PHP, yang diperkenalkan dalam Php 5.3, yang membolehkan resolusi runtime kaedah statik memerlukan lebih banyak warisan yang fleksibel. Isu: LSB vs polimorfisme tradisional; Aplikasi Praktikal LSB dan Potensi Perfo

Pembalakan PHP adalah penting untuk memantau dan menyahpepijat aplikasi web, serta menangkap peristiwa kritikal, kesilapan, dan tingkah laku runtime. Ia memberikan pandangan yang berharga dalam prestasi sistem, membantu mengenal pasti isu -isu, dan menyokong penyelesaian masalah yang lebih cepat
