phpÖÐʹÓÃsoapµÄ½¨Á¢¹²Ïí½Ó¿Ú
ÔÚÍøÕ¾ÐèÒª½¨Á¢¹²Ïí½Ó¿ÚµÄʱºò£¬¿ÉÒÔʹÓÃsoap¡£ ÏÂÃæ½éÉÜÏÂÔÚPHPÖÐÈçºÎʹÓÃSOAPµÄÍêÕû¹ý³Ì¡£
1¡¢È·ÈÏPHP»·¾³ÊÇ·ñÖ§³Ösoap,¼ì²éphpÅäÖÃÎļþ£¬°Ñextension=php_soap.dllǰµÄ·ÖºÅ(;)È¥µô(windows);ÈôÊÇ×Ô¼º±àÒëÔò±àÒëʱ±ØÐë¼ÓÉÏ --enable-soapÑ¡Ïî¡£
2¡¢½¨Á¢soap·þÎñ¶Ë¡£ ÏÂÃæÍ¨¹ýʵÀýÀ´ËµÃ÷ÈçºÎ½¨Á¢·þÎñ¶Ë¡£
<?php
class service_class {
/**
* @return string
* */
function sayHello(){
return 'hello world';
}
/**
* @param string $name;
* @return string;
*/
function getName($param1, $param2){
return $param1.$param2;
}
}
$server = new SoapServer('testwsdl.wsdl'); //------------1
$server->setClass('service_class'); //------------2
$server->handle(); //------------3
?>
ÕâÀïÓÐÒ»µãÐèҪעÒâµÄÊÇ:Èç¹ûÒªÔÚÉú³ÉµÄwsdlÎļþÓÐÀàÐ͵ϰ,ӦʹÓ÷½·¨×¢ÊÍ;(string,integerµÈ).
(1)Éú³ÉÒ»¸öʵÀý,²ÎÊý"buildin.wsdl"ÊÇwsdlÎļþËùÔÚµÄλÖÃ,ÒòΪSoapServer»¹Ã»ÓÐÌṩÉú³ÉwsdlµÄʵÏÖ,ÒòЩҪָÃ÷ϸwsdlÎļþËùÔÚµÄλÖÃ.
(2)×¢²áwebserviceµÄÌṩµÄ·½·¨,ĬÈÏΪÀàÀïÃæµÄËùÓз½·¨
(3)´¦ÀíÇëÇó;
µ½ÕâÀïΪֹ,ÔÚä¯ÀÀÆ÷ÖзÃÎʱ¾phpÎļþ,Èç¹û³öÏÖÈç¹ûÌáʾ
"cant find HTTP_RAW_POST_DATA";ÔòÔÚ´´½¨soapServerǰ,²åÈëÒÔÏ´úÂë
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
if (!isset($HTTP_RAW_POST_DATA)){
$HTTP_RAW_POST_DATA = file_get_contents(''php://input'');
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
´ËʱÈç¹ûÌáʾbad requestÖ®ÀàµÄ´íÎó,˵Ã÷web serviceÒѾÆô¶¯ÁË.
3¡¢´´½¨wsdlÎļþ
Èç¹ûûÓÐÍü¼ÇÇ°ÃæÌáµ½µÄwsdlµÄ»°,´Ë¿Ì±Ø»áÏë¼´È»²»»¹²»ÄÜÉú³ÉwsdlÎļþµÄ»°,ÄÇÄǸöbuildin.wsdl´ÓºÎ¶øÀ´ÄØ,Èç¹û¶Ôzend studioÊìϤµÄ»°,¾Í»áÏëµ½tool²Ëµ¥ÏÂÃæµÄwsdl generator,¶ÔÁË,ÓÃÕâ¸ö¹¤¾ß
¿ÉÒÔÉú³ÉºÜ˧µÄwsdlÎļþ,
ÏÂÃæ½éÉÜÏêϸÉú³É·½·¨£ºA¡¢tools->wsdl gen
Ïà¹ØÎĵµ£º
php¶ÔxmlÎļþÖнڵãµÄɾ³ý\±à¼
ʹÓÃgetElementsByTagName()·½·¨É¾³ý\±à¼XML½Úµã
Èý¸öÎļþ£º
1.root.xml
2.remove.php —— ɾ³ý½Úµã
3.replace.php —— Ìæ»»½Úµã
root.xml
<root>
<child1>child1 content</child1>
<child2>child2 content</child2>
& ......
printf()º¯ÊýÊǸñʽ»¯Êä³öº¯Êý, Ò»°ãÓÃÓÚÏò±ê×¼Êä³öÉ豸°´¹æ¶¨¸ñʽÊä³öÐÅÏ¢¡£ÔÚ±àд³ÌÐòʱ¾³£»áÓõ½´Ëº¯Êý¡£º¯ÊýµÄÔÐÍΪ£º
int printf(string $fromat [,mixed $args [,mixed ...]])
º¯Êý·µ»ØÖµÎªÕûÐÍ¡£Èô³É¹¦Ôò·µ»ØÊä³öµÄ×Ö·ûÊý£¬Êä³ö³ö´íÔò·µ»Ø¸ºÖµ¡£
printf()º¯ÊýµÄµ÷ÓøñʽΪ:
printf("<¸ñʽ»¯×Ö·û´®>", & ......
ʹÓà PHP ´¦Àí XML ÅäÖÃÎļþ
ʹÓà XML ÅäÖÃÎļþÇáÒ×µØÅäÖà PHP Ó¦ÓóÌÐòºÍ¶ÔÏó
¼¶±ð£º Öм¶
Vikram Vaswani, ´´Ê¼ÈË, Melonfire
2007 Äê 11 ÔÂ 29 ÈÕ
XML ΪӦÓóÌÐòÅäÖÃÎļþÌṩÁËÒ»ÖÖ±ã½Ý¡¢Ò×Óõıí´ïÓïÑÔ¡£µ«ÓÐʱºò½«ÕâЩÐÅÏ¢ÌáÈ¡µ½ PHP ½Å±¾Öн«»áÃæ¶ÔÒ»¸ö²»Ð¡µÄÌôÕ½¡£ÕâÕýÊÇ XJConf for PHP °ü³öÏÖµÄÔÒò£ºËüÌá ......
PHP»º´æ´úÂë
ºÃµÄÒ³Ãæ»º´æ´úÂ룬¿ÉÒÔ¼õÇáCPUºÍMYSQL¸ºµ£¡£Ê¹ÓÃǰ£¬ÏÈÔÚ¸ùĿ¼´´½¨“cache”Îļþ¼Ð£¬È»ºóÔËÐÐ1.php£¬µÚÒ»´ÎÔËÐк͵ڶþ´ÎÔËÐÐËٶȲîÒìºÜ´ó¡£»¶ÓÊìϤPHPµÄÅóÓÑʹÓúÍÌáÒâ¼û¡£
ʹÓ÷½·¨:(Çë±£´æÎªtemp.php)
<?php
include('arrcache.php');
$cache = new ArrCache('cache',5,'txt');
......
½ü
À´Ëæ×Åi18n(¹ú¼Ê»¯)µÄÖð½¥±ê×¼»¯£¬ÎÒÒ²À´½²Ò»½²ÔÚPHPÖÐÈçºÎʵÏÖ¹ú¼Ê»¯Ö§³Ö¡£¸úÆäËû³ÌÐòÓïÑÔÒ»Ñù£¬ÔÚ PHP Ò²¿ÉÒÔÀûÓà gettext
Ì×¼þд×÷ i18n ³ÌÐò£¬ÊµÏÖ NLS(Native Language Support) ¹ú¼Ê»¯Ö§³Ö£¬¾ßÌåÇë²Î¿¼¹Ù·½Îĵµ(
http://www.gnu.org/software/gettext/manual/gettext.html
)
ÕâÀïÎÒÃÇÖ÷Òª½éÉÜwindowƽ̨ÏÂÊ ......