ÈçºÎÓÃC ±àдPHPÀ©Õ¹
PHPÈ¡µÃ³É¹¦µÄÒ»¸öÖ÷ÒªÔÒòÖ®Ò»ÊÇËýÓµÓдóÁ¿µÄ¿ÉÓÃÀ©Õ¹¡£web¿ª·¢ÕßÎÞÂÛÓкÎÖÖÐèÇó£¬ÕâÖÖÐèÇó×îÓпÉÄÜÔÚPHP·¢ÐаüÀïÕÒµ½¡£PHP·¢Ðаü°üÀ¨Ö§³Ö¸÷ÖÖÊý¾Ý¿â£¬Í¼ÐÎÎļþ¸ñʽ£¬Ñ¹Ëõ£¬XML¼¼ÊõÀ©Õ¹ÔÚÄÚµÄÐí¶àÀ©Õ¹¡£
¡¡¡¡À©Õ¹APIµÄÒýÈëʹPHPÈ¡µÃÁ˾޴óµÄ½øÕ¹£¬À©Õ¹API»úÖÆʹPHP¿ª·¢ÉçÇøºÜÈÝÒ׵Ŀª·¢³ö¼¸Ê®ÖÖÀ©Õ¹¡£¡£À©Õ¹Ö÷ÒªµÄ˼ÏëÊÇ£º¾¡¿ÉÄܵĴÓÀ©Õ¹±àдÕßÄÇÀïÒþ²ØPHPµÄÄÚ²¿»úÖƺͽű¾ÒýÇæ±¾Éí£¬½ö½öÐèÒª¿ª·¢ÕßÊìϤAPI¡£
¡¡¡¡ÓÐÁ½¸öÀíÓÉÐèÒª×Ô¼º±àдPHPÀ©Õ¹¡£µÚÒ»¸öÀíÓÉÊÇ£ºPHPÐèÒªÖ§³ÖÒ»ÏîËý»¹Î´Ö§³ÖµÄ¼¼Êõ¡£Õâͨ³£°üÀ¨°ü¹üһЩÏֳɵÄCº¯Êý¿â£¬ÒÔ±ãÌṩPHP½Ó¿Ú¡£ÀýÈ磬Èç¹ûÒ»¸ö½ÐFooBaseµÄÊý¾Ý¿âÒÑÍƳöÊг¡£¬ÄãÐèÒª½¨Á¢Ò»¸öPHPÀ©Õ¹°ïÖúÄã´ÓPHPÀïµ÷ÓÃFooBaseµÄCº¯Êý¿â¡£Õâ¸ö¹¤×÷¿ÉÄܽöÓÉÒ»¸öÈËÍê³É£¬È»ºó±»Õû¸öPHPÉçÇø¹²Ïí£¨Èç¹ûÄãÔ¸ÒâµÄ»°£©¡£µÚ¶þ¸ö²»ÊǺÜÆÕ±éµÄÀíÓÉÊÇ£ºÄãÐèÒª´ÓÐÔÄÜ»ò¹¦ÄܵÄÔÒò¿¼ÂÇÀ´±àдһЩÉÌÒµÂß¼¡£
¡¡¡¡Ê×ÏÈ£¬ÎÒÃÇÓ¦¸ÃÑ¡ÔñÈçºÎÈ¥¹¹½¨ÎÒÃǵÄÀ©Õ¹Ä£¿é£¬ ÓÐÈýÖÖ·½Ê½:
¡¡¡¡1. External Modules
¡¡¡¡Íⲿģ¿é£¬Ò²¾ÍÊDZàÒë³É¹²Ïí¿â£¬ÓÃdl()º¯Êý¶¯Ì¬¼ÓÔØ¡£
¡¡¡¡ºÃ´¦£º (1)²»ÐèÒªÖØбàÒë PHP (2)PHPÌå»ýС£¬ÒòΪ²»ÐèÒª±àÒë½øPHP
¡¡¡¡È±µã: (1)ÿ´Î*.php½Å±¾Ö´Ðж¼ÐèÒªÓà dl()È¥¼ÓÔØ£¬Ð§ÂʽϵÍ
¡¡¡¡(2)ÿ´Î¶¼Òªµ÷ÓÃdl()
¡¡¡¡2. Built-in Modules
¡¡¡¡±àÒë½øPHP
¡¡¡¡ºÃ´¦: (1)²»ÐèÒª¶¯Ì¬¼ÓÔØ£¬Ä£¿éÔÚphp½Å±¾ÀïÃæ¿ÉÒÔÖ±½ÓʹÓÃ.
¡¡¡¡(2)²»ÐèÒª½«Ä£¿é±àÒë³É.so¹²Ïí¿â£¬ÒòΪֱ½Ó±àÒë½øPHP¡£
¡¡¡¡È±µã£º (1)¶ÔÄ£¿éµÄ¸Ä±ä¶¼ÐèÒªÖØбàÒëPHP
¡¡¡¡(2)ÒòΪ±àÒë½øPHP£¬ËùÒÔPHP¶þ½øÖÆÎļþ½Ï´ó£¬¶øÇÒ¶àÕ¼µãÄÚ´æ
¡¡¡¡3. The Zend Engine
¡¡¡¡Zend ºËÐÄÀïʵÏÖ £¨ÂÔ ... ÓÐÐËȤµÄ»°¿ÉÒÔ¿´ Zend API£©
¡¡¡¡Note: ±¾ÈËÍƼöÓà µÚ 2 ÖÖ·½Ê½£¬Ö±½Ó±àÒë½øPHP£¬ µ«ÊÇÔÚÏÂÃæʾÀýÀÎÒÃDZàÒë³ÉÍⲿģ¿é
¡¡¡¡£¬ÒòΪ£¬Íⲿģ¿é²»ÐèÒªÖØбàÒë PHP£¬ËùÒÔÔÚ²âÊԽ׶ÎÏȱàÒë³É¹²Ïí¿â£¬È»ºóÓÃdl()
¡¡¡¡¼ÓÔØ(²»¹ý¼ÇµÃÔÚphp.iniÀォ°²È«Ä£Ê½ÉèΪ Off)£¬²âÊÔÍêºóÔÙÓõÚ2ÖÖ·½Ê½ÖØбàÒë½ø PHP.
¡¡¡¡1. Ê×ÏÈÏÂÔØ PHP Ô´´úÂ룬 ½âѹ¡£ È»ºóÎÒÃÇ¿ªÊ¼¹¹½¨´úÂë½á¹¹£¬¿ÉÒÔÀûÓà PHP Ô´´úÂë°üextĿ¼ÀïÌṩµÄ ext_skel ³ÌÐòÈ¥Éú³ÉÎÒÃÇÐèÒªµÄ½á¹¹.
¡¡¡¡[ext]#./ext_skel --extname=my_php_module
¡¡¡¡ÕâÑù»áÔÚextÏÂÉú³ÉÒ»¸ö my_php_moduleĿ¼¡£
¡¡¡¡Ä¿Â¼ÀïÓÐ config.m4, my_php_module.h, my_php_module.c µÈ¼¸¸öÎļþ¡£
¡¡¡¡2. my_php_modu
Ïà¹ØÎĵµ£º
²éÕÒmysql_pconnectʱÔÚmysql°ïÖúÎĵµÉÏ·¢Ïֵģ¬¼ÇÔÚÕâÀï¡£
web serverʹÓÃphpÉú³ÉÒ»¸öwebÒ³ÃæµÄÈýʽÓÐÒÔÏÂÈýÖÖ£º
Ò»£º°ÑPHP×÷ΪCGI Wrapper¡£ÕâÖÖ·½Ê½Ï£¬Ã¿¸öµ½´ïweb serverµÄÇëÇ󶼻ᵼÖÂÒ»¸öphp½âÎöÆ÷½ø³Ì±»´´½¨£¬µ±Õâ¸öphpÒ³ÃæÖ´ÐнáÊøʱ£¬Õâ¸öphp½âÎöÆ÷½ø³ÌÖÕÖ¹¡£
¶þ£º
ÔÚ¶à½ø³ÌµÄweb serverÖУ¬°Ñphp×÷Ϊweb
se ......
/*
* File: main.cpp
* Author: Vicky
*
* Created on 2010Äê5ÔÂ8ÈÕ, ÏÂÎç2:47
*/
#include <iostream>
using namespace std;
void swap(int x, int y) {
cout << "x and y swap before : " << x << "\t" << y << endl;
int i = x;
x = y;
y = i; ......
/*
* File: main.cpp
* Author: Vicky
*
* Created on 2010Äê5ÔÂ8ÈÕ, ÏÂÎç2:47
*/
#include <iostream>
using namespace std;
class A{
public:
A(){
cout << "Ö´Ðй¹Ô캯Êý´´½¨Ò»¸ö¶ÔÏó" << endl;
}
A(A&){
cout << "Ö´Ðп½±´º¯Êý¿½±´Ò»¸ö¶ ......
×¼±¸:
lighttpd-1.4.15.tar.gz
php-4.4.2.tar.gz
mysql-5.0.20a.tar.gz
¿ªÊ¼:
1 ±àÒë°²×°lighttpd
# tar zxvf lighttpd-1.4.15.tar.gz
# cd lighttpd-1.4.15
# ls
# ./configure --prefix=/usr/local/lighttpd //´Ë²¿ÎÞ·¨±àÒëʱÌáʾ°²×°prce-devel
#&nbs ......