php soap
ÔÎÄת×Ô £ºhttp://home.phpchina.com/space.php?uid=49655&do=blog&id=182488
Ò»£® ±Ø±¸ÖªÊ¶
1.wsdl(web·þÎñ±ê¼ÇÓïÑÔ)
WSDL£¨ÍøÂç·þÎñÃèÊöÓïÑÔ£¬Web Services Description Language£©ÊÇÒ»ÃÅ»ùÓÚ XML
µÄÓïÑÔ£¬ÓÃÓÚÃèÊö Web Services ÒÔ¼°ÈçºÎ¶ÔËüÃǽøÐзÃÎÊ¡£
¾ßÌå²Î¿¼Çë·ÃÎÊÏÂÃæÍøÖ·
http://www.w3school.com.cn/wsdl/index.asp
2.soap
SOAP ÊÇÒ»ÖÖ¼òµ¥µÄ»ùÓÚ XML µÄÐÒ飬ËüʹӦÓóÌÐòͨ¹ý HTTP À´½»»»ÐÅÏ¢¡£
¾ßÌå²Î¿¼Çë·ÃÎÊÏÂÃæÍøÖ·
http://www.w3school.com.cn/soap/index.asp
3.phpÀ©Õ¹
¾ßÌå²Î¿¼Çë·ÃÎÊÏÂÃæÍøÖ·
http://php.net/manual/en/book.soap.php
¶þ£® php soap¿ª·¢Ä£Ê½
1. working in swdl mode(ÆõÔ¼ÏÈÐÐ(Contract first)ģʽ)
¡¡¡¡ÆõÔ¼ÏÈÐÐģʽʹÓÃÁËÒ»¸öÓÃXML¶¨ÒåµÄ·þÎñ½Ó¿ÚµÄWSDLÎļþ¡£WSDLÎļþ¶¨ÒåÁË·þÎñ±ØÐëʵÏÖ»ò¿Í»§¶Ë±ØÐëʹÓõĽӿڡ£SoapServer
ºÍSoapClientµÄWSDLģʽ¾Í»ùÓÚÕâ¸ö¸ÅÄî¡£Ò²¾ÍÊÇÓÃsoapͨѶµÄʱºò±ØÐëÏÈÓÐÒ»¸ö¶¨Òå¹ýµÄ·þÎñ½Ó¿Ú£¬²ÅÄܽøÐÐͨѶ¡£
2. working in non-swdl mode(´úÂëÏÈÐÐ(Code first)ģʽ)
ÔÚ´úÂëÏÈÐÐģʽÖУ¬Ê×ÏÈÒªÏÈд³öʵÏÖ·þÎñµÄ´úÂ롣ȻºóÔÚ´ó¶àÊýÇé¿öÏ£¬´úÂë»á²úÉúÒ»¸öÆõÔ¼£¬»»ÖÖ˵·¨£¬Ò»¸öWSDL¡£½Ó×ſͻ§¶ËÔÚʹÓ÷þÎñµÄʱºò¾Í¿ÉÒÔʹ
ÓÃÄǸöWSDLÀ´»ñµÃ·þÎñµÄ½Ó¿Ú¡£¾¡¹ÜÈç´Ë£¬PHP5µÄÀ©Õ¹²¢Ã»ÓдӴúÂëÊä³öÒ»¸öWSDLµÄ¹æ¶¨£¬¿¼Âǵ½ÕâÖÖÇé¿ö£¬¿ÉÒÔÔÚnon-WSDLģʽÏÂʹÓÃ
SoapServerºÍSoapClient¡£Ò²¾ÍÊÇ˵ÔÚsoapͨѶµÄʱºò²¢²»ÐèÒªÒ»¸öÔ¤Ïȶ¨Òå¹ýµÄ·þÎñ½Ó¿Ú£¬´úÂë»á×Ô¶¯µÄ²úÉú¡£
Èý£®²Î¿¼Àý×Ó£º
¡¡¡¡ÏÂÃæ½éÉÜÈçºÎʹÓÃWSDLģʽºÍnon-WSDLģʽÀ´ÊµÏÖ·þÎñºÍ¿Í»§¶Ë¡£Ïà¶Ô¶øÑÔ£¬Ê¹ÓÃWSDLģʽÀ´ÊµÏÖ·þÎñºÍ¿Í»§¶Ë»á±È½ÏÈÝÒס£
1. noWSDLģʽʵÏÖ
·þÎñ¶Ë server.php
<?php
class test
{
/**
*
* @return string
*/
function show()
{
return 'hell
Ïà¹ØÎĵµ£º
Éè¼ÆÄ£Ê½ Ò»Ê齫Éè¼ÆÄ£Ê½ÒýÈëÈí¼þÉçÇø£¬¸ÃÊéµÄ×÷ÕßÊÇ Erich Gamma¡¢Richard Helm¡¢Ralph Johnson ºÍ John Vlissides Design£¨Ë×³Æ “ËÄÈ˰©¡£Ëù½éÉܵÄÉè¼ÆÄ£Ê½±³ºóµÄºËÐĸÅÄî·Ç³£¼òµ¥¡£¾¹ý¶àÄêµÄÈí¼þ¿ª·¢Êµ¼ù£¬Gamma µÈÈË·¢ÏÖÁËijЩ¾ßÓй̶¨Éè¼ÆµÄģʽ£¬¾ÍÏñ½¨ÖþʦÉè¼Æ·¿×Ӻͽ¨ÖþÎïÒ»Ñù£¬¿ÉÒÔΪԡÊÒµÄλÖûò ......
ÄãÊÇPHP²ËÄñ£¬Èç¹ûÄ㣺
1. ²»»áÀûÓÃÈçphpDocÕâÑùµÄ¹¤¾ßÀ´Ç¡µ±µØ×¢ÊÍÄãµÄ´úÂë
2. ¶ÔÓÅÐãµÄ¼¯³É¿ª·¢»·¾³ÈçZend Studio»òEclipse PDTÊÓ¶ø²»¼û
3. ´ÓδÓùýÈκÎÐÎʽµÄ°æ±¾¿ØÖÆÏµÍ³£¬ÈçSubclipse
4. ²»²ÉÓÃijÖÖ±àÂëÓëÃüÃû±ê×¼£¬ÒÔ¼°Í¨ÓÃÔ¼¶¨£¬²»ÄÜÔÚÏîÄ¿¿ª·¢ÖÜÆÚÀï¹á³¹Âäʵ
5. ²»Ê¹ÓÃͳһ¿ª·¢·½Ê½
6. ²»×ª»»£¨»ò£©Ò²² ......
index.phpÎļþµÚÒ»ÐоÍÊǰüº¬ÁË
include_once('./common.php');
ÎļþËùÒÔÏȶÔcommon.phpÎļþ½âÎö
<?php
/*
[UCenter Home] (C) 2007-2008 Comsenz Inc.
$Id: common.php 10981 2009-01-14 03:05:20Z liguode $
*/
//¶¨ÒåÒ»¸ö³£Á¿£¬ÓÃÀ´ÔÚÆäËûÒ³ÃæÖУ¬·ÀÖ¹±»¶ñÒâÓû§Ö±½Óµ÷ÓÃÆäËûPHPÎļþ¡£
@def ......
ÏÈ˵ͨ¹ýjavascript·¢ËÍʱµÄÂÒÂëÎÊÌ⣬Èç¹û·¢Ë͵ÄÊÇÖÐÎÄ£¬¾ÍÒªÓÃescapeÕâ¸öº¯Êý´¦Àí£¬±ÈÈ磺
£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½
var url="testurl.php?name="+"¸Õ¸Õ";
£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½
ÄÇô¾ÍÒª¸Ä³É
£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½£½
var url="testurl. ......
1.phpÖеÄ__FILE__³£Á¿·µ»ØÎļþµÄÍêÕû·¾¶ºÍÎļþÃû.
2.dirname(__FILE___) º¯Êý·µ»ØµÄÊǽű¾ËùÔÚÔڵķ¾¶¡£
±ÈÈçÎļþ b.php °üº¬ÈçÏÂÄÚÈÝ£º
<?php
$basedir = dirname(__FILE__);
?>
Èç¹ûb.php±»ÆäËûĿ¼ÀïµÄa.phpÎļþrequire »òÕß include È¥ÒýÓõϰ¡£
±äÁ¿?$basedir µÄÄÚÈÝ»¹ÊÇb.phpËùÔÚµÄÄǸöÎļþ¼Ð ......