phpÓëWebService½»»¥
WebService¼ò½é
Ò»£® ¸ÅÊö
Ŀǰ½øÐÐWeb ServiceͨÐÅÓÐÁ½ÖÖÐÒé±ê×¼£¬Ò»ÖÖÊÇXML-RPC£¬ÁíÍâÒ»ÖÖÊÇSOAP¡£
1. XML-RPC±È½Ï¼òµ¥£¬³öÏÖʱ¼ä±È½ÏÔ磻
2. SOAP±È½Ï¸´ÔÓ£¬Ö÷ÒªÊÇһЩÐèÒªÎȶ¨¡¢½¡×³¡¢°²È«²¢ÇÒ¸´ÔÓ½»»¥µÄʱºòʹÓá£
PHPÖм¯³ÉÁËXML-RPCºÍSOAPÁ½ÖÖÐÒéµÄ·ÃÎÊ£¬¶¼ÊǼ¯ÖÐÔÚxmlrpcÀ©Õ¹µ±ÖС£ÁíÍ⣬ÔÚPHPµÄPEARÖУ¬²»¹ÜÊÇPHP 4»¹ÊÇPHP 5£¬¶¼ÒѾĬÈϼ¯³ÉÁËXML-RPCÀ©Õ¹£¬¶øÇÒ¸ÃÀ©Õ¹¸úxmlrpcÀ©Õ¹Î޹أ¬Äܹ»¶ÀÁ¢ÊµÏÖXML-RPCµÄÐÒé½»»¥£¬Èç¹ûûÓÐxmlrpcÀ©Õ¹£¬½¨ÒéʹÓÃPEAR::XML-RPCÀ©Õ¹¡£
¶þ£® °²×°xmlrpcÀ©Õ¹
Èç¹ûϵͳÖÐûÓа²×°xmlrpcµÄphpÀ©Õ¹£¬ÄÇôÇëÕýÈ·°²×°¡£
1. ÔÚWindowsƽ̨Ï£¬Ê×ÏȰÑPHP°²×°Ä¿Â¼ÏµÄÀ©Õ¹php_xmlrpc.dll·Åµ½C:\Windows»òÕßC:\WinntĿ¼Ï£¬(PHP4µÄÀ©Õ¹ÔÚC:\php\extensionsĿ¼ÖУ¬PHP5µÄÀ©Õ¹ÔÚC:\php\extĿ¼ÖÐ)£¬Í¬Ê±ÔÚC:\Windows\php.ini»òÕßC:\Winnt\php.iniÖаÑextension=php_xmlrpc.dllÇ°ÃæµÄ·ÖºÅ";"È¥µô£¬È»ºóÖØÆôWeb·þÎñÆ÷ºó²é¿´phpinfo()ÓÐûÓÐXML-RPCÏîÄ¿¾ÍÄܹ»È·¶¨ÊÇ·ñÒѾÕýÈ·°²×°xmlrpcÀ©Õ¹¡£
2. ÔÚUnix/Linuxƽ̨Ï£¬Èç¹ûûÓа²×°xmlrpcÀ©Õ¹£¬ÇëÖØÐ±àÒëPHP£¬ÔÚconfigureµÄʱºòÇë¼ÓÈë --with-xmlrpc Ñ¡ÏȻºó²é¿´phpinfo()¿´ÊÇ·ñÕý³£°²×°xmlrpc¡£
Èý£® XML-RPCʵ¼ù
·þÎñÆ÷¶ËʹÓÃxmlrpc_server_create()º¯Êý²úÉúÒ»¸ö·þÎñÆ÷¶Ë£¬È»ºó°ÑÐèÒªÐèÒª±©Â¶µÄRPCµ÷ÓýӿڽøÐÐ×¢²á£¬½ÓÊÜRPC¿Í»§¶ËPOST¹ýÀ´µÄXMLÊý¾Ý£¬È»ºó½øÐд¦Àí£¬´¦Àí½á¹ûͨ¹ýXMLµÄÐÎʽÏÔʾ¸ø¿Í»§¶Ë¡£
´úÂëÈçÏ£º rpc_server.php
/**
* º¯Êý£ºÌṩ¸øRPC¿Í»§¶Ëµ÷Óõĺ¯Êý
* ²ÎÊý£º
* $method ¿Í»§¶ËÐèÒªµ÷Óõĺ¯Êý
* $params ¿Í»§¶ËÐèÒªµ÷Óõĺ¯ÊýµÄ²ÎÊýÊý×é
* ·µ»Ø£º·µ»ØÖ¸¶¨µ÷Óýá¹û
*/
function rpc_server_func($method, $params) {
$parameter = $params[0];
if ($parameter == "get")
{
$return = ''This data by get method'';
}
else
{
$return = ''Not specify method or params'';
}
return $return;
}
//²úÉúÒ»¸öXML-RPCµÄ·þÎñÆ÷¶Ë
$xmlrpc_server = xmlrpc_server_create();
//×¢²áÒ»¸ö·þÎñÆ÷¶Ëµ÷Óõķ½·¨rpc_server£¬Êµ¼ÊÖ¸ÏòµÄÊÇrpc_server_funcº¯Êý
xmlrpc_server_register_method($
Ïà¹ØÎĵµ£º
PHP±äÁ¿µÄ±äÁ¿£¬¼´¿É±ä±äÁ¿
¿É±ä±äÁ¿µÄ¸ÅÄͨ¹ý»ñȡһ¸ö±äÁ¿µÄÖµ×öΪÁíÍâÒ»¸ö±äÁ¿µÄÃû³ÆÀ´²Ù×÷±äÁ¿£¬¾ÍÊÇ¿ÉÒÔ±äÁ¿¡£
¡¾Ê¾Àý¡¿
Îı¾²é¿´¸´ÖÆ´úÂë´òÓ¡¹ØÓÚ
<?php
$a = 'hello'; //ÆÕͨ±äÁ¿
$$a = ' ......
PHP³£Á¿
³£Á¿Êǹ̶¨µÄÊýÖµÀýÈçÔ²ÖÜÂÊ£¬ÓÃÒ»¸ö¼òµ¥µÄ±êʶ·û½øÐж¨Ò壨Ãû×Ö£©¡£³£Á¿Ä¬ÈÏΪ´óСдÃô¸Ð¡£°´ÕÕ¹ßÀý³£Á¿±êʶ·û×ÜÊÇ´óдµÄ¡£
³£Á¿ÃûºÍÆäËüÈκΠPHP ±êÇ©×ñÑͬÑùµÄÃüÃû¹æÔò¡£ºÏ·¨µÄ³£Á¿ÃûÒÔ×Öĸ»òÏ»®Ïß¿ªÊ¼£¬ºóÃæ¸ú×ÅÈκÎ×Öĸ£¬Êý×Ö»òÏ»®Ïß¡£
³£Á¿µÄ¶¨Ò壺¿ÉÒÔÓà define( ) º¯ÊýÀ´¶¨Òå³£Á¿¡£Ò»¸ö³£Á¿Ò»µ©±»¶¨Ò ......
PHPeclipse¿ÉÒÔʵÏÖ±£´æphpÎļþºó×Ô¶¯¼ì²éPHPµÄÓï·¨´íÎó,µ«ÊÇÎÒµÄEclipse+PDTȴûÓÐÕâ¸ö¹¦ÄÜ. µ«ÊÇÎҲ鿴ÁËzend.com¹ØÓÚPDTµÄÊÖ²á,·¢ÏÖPDTÊÇÓÐÕâ¸ö¹¦Äܵİ¡. ÖÕÓÚ,ÊÔÁ˼¸Ìì,ÕÒµ½½â¾öµÄ·½·¨ÁË: ÔÚPHP explorer ViewµÄÏîÄ¿Ãû³ÆÉϵã»÷ÓÒ¼ü, Ñ¡Ôñconfigure->Add PHP Support... ÊÀ½çÊÇÄÇôµÄÃÀºÃ~~~ ......
Ò»°ãÇé¿öÏ£¬ÎÒÃÇÉèÖÃphpµÄinclude_path¶¼»áͨ¹ýÐÞ¸Äphp.iniÀ´ÊµÏÖ¡£
ÓÐʱºò£¬ÎÒÃÇûÓзþÎñÆ÷µÄȨÏÞ¡£ÓÐʱºò£¬ÎÒÃǰÑÒ»¸öĿ¼¼Óµ½include_path»áÈÃÒÑÓеijÌÐò³åÍ»¡£ÊÜcakephpµÄÆô·¢:ÔÚapp/webrootĿ¼ÏÂindex.phpÓÐÈçÏ´úÂë
<?php
ini_set('include_path', CAKE_CORE_INCLUDE_PATH . PATH_SEPARATOR . ROOT . DS . AP ......