日期:2014-05-17  浏览次数:20407 次

php sca学习之1

折腾了一个上午,PHP SCA的居然连helloworld也出不来,在单位的VISITA上,百思不得其解,于是晚上回家

在WIN2003上,用同样的APACHE版本,PHP 用5.2.1,居然完成成功,下面记录过程,毕竟这方面资料国内很少。

?

?

1 先安装pear

?? 在你的PHP目录下,输入go-pear,然后基本按回车,就完成安装了

?

2 用PECL安装SCA-SDO,因为这样很方便了

?? 输入pecl install -B SCA_SDO ,之后会自动下载

SCA-SDO的相关库文件,会放在你的pear目录下的

?

3 还要下载一个php_sdo.sll文件,然后在

php.ini中加入?extension=php_sdo.dll

4 把pear\sca\examples\下的随便一个例子放到你运行PHP的目录下,就可以运行了,

5 咱们来helloworld

?

include 'SCA/SCA.php';

/**
?* @service
?* @binding.soap
?*/
class Greeting
{
??? /**
????? * @param string $name
????? * @return string
????? */???
??? public function greet($name)
??? {
??????? return 'hello ' . $name;
??? }
}
?>

?

   这里用了标签,之后IE浏览http://localhost:8082/myphp/Greeting.php?wsdl
就可以看到WSDL了

使用之:

?

include 'SCA/SCA.php';

$greeting_service? = SCA::getService('http://localhost:8082/myphp5/helloworldscawsservice/Greeting.php?wsdl');
$name????????????? = "jackyrong";

$greeting????????? = $greeting_service->greet($name);
echo "Name: " . $name . "<br/>";

?

之后就可以使用了,第一个HELLOWOLRD出来了.

 注意,我在visita上运行是出错的,在win2003上运行正确,哎,可恶的visita

参考资料:

http://www.osoa.org/display/PHP/SCA+with+PHP

http://www.ibm.com/developerworks/webservices/library/ws-soa-scasdo/