PHPÔ´´úÂë¼òµ¥·ÖÎö
PHPÔ´´úÂë¼òµ¥·ÖÎö
1. Ŀ¼½á¹¹
1. build ºÍ±àÒëÓйصÄĿ¼¡£
2. ext À©Õ¹¿â´úÂ룬ÀýÈç Mysql¡¢zlib¡¢iconv µÈÎÒÃÇÊìϤµÄÀ©Õ¹¿â¡£
3. main Ö÷Ŀ¼¡£
4. sapi ºÍ¸÷ÖÖ·þÎñÆ÷µÄ½Ó¿Úµ÷Óã¬ÀýÈçapache¡¢IISµÈ£¬Ò²°üº¬Ò»°ãµÄfastcgi¡¢cgiµÈ¡£
5. win32 ºÍ Windows ϱàÒë PHP ÓйصĽű¾¡£ÓÃÁË WSH¡£
6. Zend Îļþ¼ÐºËÐĵÄÒýÇæ¡£
2. PHPʹÓÃLexºÍYacc¶ÔÓï·¨½øÐнâÎö¡£
ÔÚ Zend Ŀ¼ÏÂÓÐÁ½¸öÎļþ zend_language_parser.y Óë zend_language_scanner.l ËûÃÇÊÇLexºÍYaccµÄ½Å±¾Îļþ£¬Í¨¹ýÕâÁ½¸ö½Å±¾ÎļþÉú³É¶ÔÓ¦µÄ.cºÍ.hÎļþ£¬Êµ¼ÊÉÏÕâÔÚ linux Ï·dz£ÆÕ±é£¬gcc ҲʹÓÃËüÃDzúÉúÓïÊ÷¡£
3. PHPÈçºÎʹÓÃMysql£¿
ext Ŀ¼ÏÂÓÐÒ»¸ö mysql ×ÓĿ¼£¬Õâ¸öĿ¼ÖеÄphp_mysql.c ºÍ php_mysql.h ¸ºÔð PHP Óë Mysql ²Ù×÷¡£Ê¹ÓÃÁË Mysql ÊÖ²áÖÐµÄ C ÓïÑÔ API¡£
4. °²È«Ä£Ê½£¿
main Îļþ¼ÐϵÄsafe_mode.h ºÍ safe_mode.c Îļþ¸ºÔðPHPµÄ°²È«Ä£Ê½¡£
5. ÄÇЩÊÇ PHP µÄ±ê×¼º¯Êý£¬ÄÇЩÊÇÀ©Õ¹º¯Êý£¿
ext Ŀ¼ÏÂÓ¢ÎÄÒâ˼ÊÇÀ©Õ¹£¬¶øÔÚ ext Ï»¹ÊÇÓÐÒ»¸ö standard Îļþ¼Ð£¬´æ·Å×Å PHP Öеıê×¼º¯Êý£¬ÀýÈç explode Õâ¸öº¯ÊýÊÇÔÚ ./ext/standard/string.c ϶¨ÒåµÄ¡£
6. PHP Ô´´úÂëÖеÄPHP_FUNCTION(xx) ºê¡£
Õâ¸öºêÓÃÀ´¼ìÑéÒ»¸öº¯ÊýÃû³ÆÊÇ·ñºÏ·¨¡£ºÏ·¨µÄº¯ÊýÃû³ÆÓ¦¸ÃÓÉСд×Öĸ¼°Ï»®Ïß×é³É¡£
7. ÄÇЩº¯Êý¼¯ÊDZê×¼µÄ£¿
ͨ¹ý ./ext/standard/ Ŀ¼ÎÒÃÇ¿ÉÒÔ¿´µ½ÒÔϳ£Óú¯Êý¼¯ÊDZê×¼µÄ¡£×Ö·û´®º¯Êý¼¯¡¢Êý×麯Êý¼¯¡¢Îļþ¼°Ä¿Â¼²Ù×÷º¯Êý¼¯¡¢md5Ëã·¨µÈ¡£
8. һЩº¯ÊýµÄʵÏÖ¹ý³Ì
1. fsockopen, pfsockopen µÄʵÏÖ
ÕâÁ½¸öº¯ÊýµÄʵÏÖÀë²»¿ª ./ext/standard/fsock.c ÎļþÖÐµÄ php_fsockopen_stream º¯Êý¡£¾ßÌåµÄsocket¶¼ÔÚ./main/network.c ÖÐʵÏÖ¡£
9. PHP º¯Êý¼¯×¢²á¹ý³Ì
ÔÚ./main/internal_functions.c ÖÐÓÐÒ»¸öÊý×é php_builtin_extensions ĬÈÏÏÂÓÐÒÔϳÉÔ±£º
1. phpext_bcmath_ptr
2. phpext_calendar_ptr
3. phpext_com_dotnet_ptr
4. phpext_ctype_ptr
5. phpext_date_ptr
6. phpext_ftp_ptr
7. phpext_has
Ïà¹ØÎĵµ£º
<?php
function genPassword($min = 5, $max = 8)
{
$validchars="abcdefghijklmnopqrstuvwxyz123456789";
$max_char=strlen($validchars)-1;
$length=mt_rand($min,$max);
$password = "";
for($i=0;$i<$length;$i++)
{
$password.=$validchars[mt_rand(0,$max_char)] ......
֮ǰ²Î¼ÓѧУµÄÌôÕ½±£¬×öÁËÒ»¸öСµÄÊÖ»úÍøÕ¾ÏîÄ¿£¬ÆäÖÐҪʵÏֵǽѧУУÄÚÓÊÏ䣬¿¼Âǵ½ÊÖ»úÓû§¶ËûÓа취ֱ½Ó·ÃÎÊÑ§Ð£ÍøÒ³¡£ÓÚÊÇÏëµ½ÁËʹÓÃphpʵÏÖÄ£ÄâµÇ½£¬ÓÐЩÐíµÄÐĵá£Ë³±ã¼Ç¼һÏ¡£
ÔÚÎÒÃÇѧУµÄÓÊÏäµÇÂ½Ò³ÃæµÄµÇ½±íµ¥µÄÄÚÈÝÓÐÓû§ÃûºÍÃÜÂ룬ûÓÐÑéÖ¤Âë»úÖÆ£¬ÕâÑù±È½ÏºÃ°ì¡£´ÓÔ´ÎļþÀï¼ÇÏÂ±íµ¥ÀïÓÐusernameºÍpas ......
1.°Ñ½âѹµÄphp-5.2.6-Win32.zipÖØÃüÃûΪphp5¡£²¢¸´ÖƵ½DÅÌĿ¼Ï¡£¼´°²×°Â·¾¶Îª D:\php5
2.ÕÒµ½phpĿ¼Ï嵀 php.ini-dist»ò php.ini.recommendedÎļþ£¬ÖØÃüÃûΪ php.ini
3.ÔÙ°ÑphpĿ¼ÏµÄphp5ts.dll,libmysql.dll¸´ÖƵ½Ä¿Â¼ c:\windows\system32Ï¡£
4.°Ñphp5\extĿ¼ÏµÄphp_gd2.dll,php_mysql.dll,php_mbstring.dllÎ ......
ÎÒÃÇÔÚдÓû§ÑéÖ¤Ò³Ãæ£¬Èç×¢²á£¬µÇ¼µÄʱºò£¬ÎªÁ˼ÓÇ¿Óû§µÇ¼µÄ°²È«ÐÔ£¬Ìí¼ÓÑéÖ¤ÂëÑéÖ¤¡£
ÑéÖ¤Âëͨ¹ýGDÉú³ÉPNGͼƬ£¬²¢°Ñ$randvalËæ»úÊý×Ö¸³¸ø$_SESSION['login_check_num']£¬ÔÚͨ¹ýÓû§ÊäÈëµÄ$_POST½øÐбȽϣ¬À´ÅжÏÊÇ·ñÕýÈ·¡£´ïµ½ÐèҪʵÏֵŦÄÜ£¬ÐèÒªÐÞ¸Äphp.iniÎļþ£¬Ê¹phpÖ§³ÖGD¿â¡£
<?php
//µ÷ÓôËÒ³Ãæ£¬Èç¹ûÏ ......