接触PHP第二天,要求PHP访问WCF服务
着实痛苦,无从下手啊.
在网上查了很多资料知道PHP访问WCF很方便
<?php $client = new SoapClient ( 'http://localhost:1447/Service1.svc?wsdl' ); .... ?>
如上即可访问
但是报错,无法找到SoapClient 这个类,在网上找答案,说是要去掉php.ini中;extension=php_soap.dll的分号去掉,然后重启即可
由于不熟悉,兄弟一直在apach中的php.ini-dist中改了又改,一直无效.看了很多网站,都是说没有去掉那个分号
可是我就纳闷了,我去了咋就不行呢
蛋痛了一下午,最后甚至怀疑是不是人品出了问题
临近下班,无意间又打开了localhost这个熟悉的界面
php.ini | F:\PHP\php-5.2.14-Win32\php-apache2handler.ini |
我的天,php.ini应该是F:\PHP\php-5.2.14-Win32\php-apache2handler.ini
当即修改,立马见效.
<?php $client = new SoapClient ( 'http://localhost:1447/Service1.svc?wsdl' );//这是复制的wcf test client的路径 $obj->x = 2; $obj->y = 3; $result= $client->Add ( $obj );//wcf 中add方法需要两int,你懂滴 echo $result->AddResult;//现在还没明白为啥结果集 $cc->AddResult $strParam->str="tianbang"; $str = $client->GetStr ( $strParam); echo $str->GetStrResult;//这里测试返回一个string,因为我想json,你懂滴 ?>
总结:使用soapclient需要注意地方如下: