[ת]PHP autoload»úÖÆÏê½â
2008.12.13×¢£º¹ØÓÚSPLµÄautoloadµÄº¯ÊýÊֲᣬÇë²Î¿¼ SPLº¯ÊýÊÖ²á:
http://www.phpinternals.com/blog/2008/12/translate-refs-spl-functions/
(1) autoload»úÖÆ¸ÅÊö
ÔÚ
ʹÓÃPHPµÄOOģʽ¿ª·¢ÏµÍ³Ê±£¬Í¨³£´ó¼Òϰ¹ßÉϽ«Ã¿¸öÀàµÄʵÏÖ¶¼´æ·ÅÔÚÒ»¸öµ¥¶ÀµÄÎļþÀÕâÑù»áºÜÈÝÒ×ʵÏÖ¶ÔÀà½øÐи´Óã¬Í¬Ê±½«À´Î¬»¤Ê±Ò²ºÜ±ãÀû¡£ÕâÒ²
ÊÇOOÉè¼ÆµÄ»ù±¾Ë¼ÏëÖ®Ò»¡£ÔÚPHP5֮ǰ£¬Èç¹ûÐèҪʹÓÃÒ»¸öÀֻ࣬ÐèÒªÖ±½ÓʹÓÃinclude/require½«Æä°üº¬½øÀ´¼´¿É¡£ÏÂÃæÊÇÒ»¸öʵ¼ÊµÄÀý
×Ó£º
/* Person.class.php */
<?php
class Person {
var $name, $age;
function __construct ($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
/* no_autoload.php */
<?php
require_once (”Person.class.php”);
$person = new Person(”Altair”, 6);
var_dump ($person);
?>
ÔÚÕâ¸öÀý×ÓÖУ¬no-autoload.phpÎļþÐèҪʹÓÃPersonÀ࣬ËüʹÓÃÁËrequire_once½«Æä°üº¬£¬È»ºó¾Í¿ÉÒÔÖ±½ÓʹÓÃPersonÀàÀ´ÊµÀý»¯Ò»¸ö¶ÔÏó¡£
µ«
Ëæ×ÅÏîÄ¿¹æÄ£µÄ²»¶ÏÀ©´ó£¬Ê¹ÓÃÕâÖÖ·½Ê½»á´øÀ´Ò»Ð©Òþº¬µÄÎÊÌ⣺Èç¹ûÒ»¸öPHPÎļþÐèҪʹÓúܶàÆäËüÀ࣬ÄÇô¾ÍÐèÒªºÜ¶àµÄrequire/includeÓï
¾ä£¬ÕâÑùÓпÉÄÜ»áÔì³ÉÒÅ©»òÕß°üº¬½ø²»±ØÒªµÄÀàÎļþ¡£Èç¹û´óÁ¿µÄÎļþ¶¼ÐèҪʹÓÃÆäËüµÄÀ࣬ÄÇôҪ±£Ö¤Ã¿¸öÎļþ¶¼°üº¬ÕýÈ·µÄÀàÎļþ¿Ï¶¨ÊÇÒ»¸öجÃΡ£
PHP5ΪÕâ¸öÎÊÌâÌṩÁËÒ»¸ö½â¾ö·½°¸£¬Õâ¾ÍÊÇÀàµÄ×Ô¶¯×°ÔØ(autoload)»úÖÆ¡£autoload»úÖÆ¿ÉÒÔʹµÃPHP³ÌÐòÓпÉÄÜÔÚʹÓÃÀàʱ²Å×Ô¶¯°üº¬ÀàÎļþ£¬¶ø²»ÊÇÒ»¿ªÊ¼¾Í½«ËùÓеÄÀàÎļþinclude½øÀ´£¬ÕâÖÖ»úÖÆÒ²³ÆÎªlazy loading¡£
ÏÂÃæÊÇʹÓÃautoload»úÖÆ¼ÓÔØPersonÀàµÄÀý×Ó£º
/* autoload.php */
<?php
function __autoload($classname) {
require_once ($classname . “class.php”);
}
$person = new Person(”Altair”, 6);
var_dump ($person);
?>
ͨ
³£PHP5ÔÚʹÓÃÒ»¸öÀàʱ£¬Èç¹û·¢ÏÖÕâ¸öÀàûÓмÓÔØ£¬¾Í»á×Ô¶¯ÔËÐÐ__autoload()º¯Êý£¬ÔÚÕâ¸öº¯ÊýÖÐÎÒÃÇ¿ÉÒÔ¼ÓÔØÐèҪʹÓõÄÀà¡£ÔÚÎÒÃÇÕâ¸ö¼òµ¥
µÄÀý×ÓÖУ¬ÎÒÃÇÖ±½Ó½«ÀàÃû¼ÓÉÏÀ©Õ¹Ãû”.class.php
Ïà¹ØÎĵµ£º
#apt-get install apache2
//°²×°apahce2
#apt-get install php5
//°²×°php5
#apt-get install mysql-server
//°²×°mysql·þÎñ¶Ë
#apt-get install mysql-myclient
//°²×°mysqlµÄ¿Í»§¶Ë
#apt-get install php-mysql
//°²×°php-mysqlµÄÁ¬½á
apache+php+mysql »·¾³ÒѾ´î½¨ºÃÁË
½«ÒÔϵķþÎñÖØÆôÒ»ÏÂ
#/et ......
PHPÊÇʲô£¿
PHPÊÇÒ»ÖÖ¿ª·¢ÓïÑÔ£¬Ê¼´´ÓÚ1995Ä꣬¹Ù·½ÍøÕ¾www.php.net
PHPµÄÈ«³ÆÊdz¬Îı¾Ô¤´¦ÀíÆ÷£¨Hypertext Preprocessor£©
PHPÊÇÒ»ÖÖ´´½¨¶¯Ì¬½»»¥ÍøÕ¾µÄ·þÎñÆ÷¶Ë½Å±¾ÓïÑÔ£¬Í¨³£ÐèÒª´îÅäApache£¨Web·þÎñÆ÷Èí¼þ£©Ò»ÆðʹÓ㬲»¹ýÒ²¿ÉÒÔ´îÅäÆäËû·þÎñÆ÷Èí¼þ£¬ÈçIIS¡¢NginxµÈ¡£
PHPÊÇ×îÁ÷ÐеÄÍøÕ¾¿ª·¢ÓïÑÔÖ®Ò»£¬ÍêÈ«Ãâ·Ñ ......
×Ô¶¯×ªÏò£¬Ò²½Ð×Ô¶¯Öض¨Ïò¡£×Ô¶¯Ìø×ª£¬Ö¸µ±·ÃÎÊÓû§µÇ½µ½Ä³ÍøÕ¾Ê±£¬×Ô¶¯½«Óû§×ªÏòÆäËüÍøÒ³µØÖ·µÄÒ»ÖÖ¼¼Êõ¡£×ªÏòµÄÍøÒ³µØÖ·¿ÉÒÔÊÇÍøÕ¾Ä򵀮äËüÍøÒ³£¬Ò²¿ÉÒÔÊÇÆäËüÍøÕ¾¡£Í¨³£Çé¿öÏ£¬ä¯ÀÀÆ÷»áÊÕµ½Ò»¸öÍøÒ³£¬¸ÃÒ³Ãæº¬ÓÐ×Ô¶¯¼ÓÔØÒ»ÆäËüÍøÒ³µÄ´úÂë¡£¸ÃÒ³ÃæÓпÉÄÜÔÚ·þÎñÆ÷¶Ë±»×ª»»£¬ÕâÑùµÄ»°£¬ä¯ÀÀÆ÷Ö»ÊÕµ½Ò»¸öÒ³Ãæ£¬¶ø×Ô¶¯×ª ......
Ò»°ãÇé¿öÏ£¬ÎÒÃÇÉèÖÃ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 ......
WebService¼ò½é
Ò»£® ¸ÅÊö
Ŀǰ½øÐÐWeb ServiceͨÐÅÓÐÁ½ÖÖÐÒé±ê×¼£¬Ò»ÖÖÊÇXML-RPC£¬ÁíÍâÒ»ÖÖÊÇSOAP¡£
1. XML-RPC±È½Ï¼òµ¥£¬³öÏÖʱ¼ä±È½ÏÔ磻
2. SOAP±È½Ï¸´ÔÓ£¬Ö÷ÒªÊÇһЩÐèÒªÎȶ¨¡¢½¡×³¡¢°²È«²¢ÇÒ¸´ÔÓ½»»¥µÄʱºòʹÓá£
PHPÖм ......