ÀÖÓãµç¾º


  • ½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

    È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

    PHP¸ÃÈçºÎÓÅ»¯ÐÔÄÜ£¿

    ¸üÐÂʱ¼ä:2018Äê11ÔÂ16ÈÕ15ʱ49·Ö À´Ô´:ÀÖÓã²¥¿Í ä¯ÀÀ´ÎÊý:

    ±¾ÎÄÊǹØÓÚPHPÐÔÄÜÓÅ»¯¡¢¼õÉÙºÄʱ·½ÃæµÄ»°Ì⣬ËäÈ»ÀÏÉú³£Ì¸£¬µ«»¹ÊÇÒÔÎÒ¸öÈ˵ĽǶÈÀ´Ò»¸ö×ܽá»ò·ÖÏí¡£

            ÍøÉϹØÓÚ50ÌõPHPÓÅ»¯µÄ·½·¨£¬³ý´ËÖ®Íâ´Ó¼Ü¹¹»ò»·¾³·½ÃæµÄÓÅ»¯½¨ÒéµÈ£¬ÊǷdz£ÓÐÒæµÄ¡£

           ±¾ÎĽ²½²ÎÒËù¹Ø×¢µÄһЩ·½·¨»ò½¨Òé¡£

            Ò»°ãÀ´Ëµ£¬ÐÔÄÜÓÅ»¯¿ÉÏÈ´Ó´óµÄ·½Ïò¿ªÊ¼¿¼ÂÇ£¬´Ó¶ÔÓ°ÏìÐÔÄܱȽϴóµÄÒòËØÀ´¿¼ÂÇ£¬±ÈÈçÏÖÔÚʹÓÃPHP5.7£¬ÐÔÄܾÝ˵¿ÉÒԳɱ¶Ìá¸ß£¬×îºó¿¼ÂǵÄÓ¦¸ÃÊÇPHPÓ﷨ϸ½ÚÉÏ¡£

    1. PHP²¿Êð»·¾³
    µ¥Ì¨·þÎñÆ÷³£ÓÃapache+phpºÍnginx+php-fpm·½Ê½²¿Êð£¬ÎÒÃÇһֱʹÓÃapache+php·½Ê½£¬¾Ý˵ÏÖÔÚÓÃnginx+php-fpm²¿Êð·½Ê½ÐÔÄܱÈapache+phpÐÔÄܺ㬿ɿ¼ÂÇÒ»ÊÔ¡£ÁíÍâ¾ÍÊÇÏñnginx+swooleµÈ£¬Ò²ÊÇ¿ÉÑ¡Ïî¡£
    ¼¯ÈºÊÇÔÚ´Ë»ù´¡ÉÏ£¬Ê¹ÓÃnginx/lvs/ÔÆÉÏlbsµÈ·´Ïò´úÀí×÷Ϊ¸ºÔؾùºâǰ¶Ë¡£PHP¼¯Èº²¿ÊðÔÚ¿É¿¿ÐԵĻù´¡ÉÏ£¬PHP¼¯Èº´¦ÀíÐÔÄܱȵ¥Ì¨·þÎñÆ÷ÓÐN±¶Ìá¸ß£¨µ«×÷Ϊ·þÎñµÄÕûÌåÐÔÄܲ¢²»Ò»¶¨ÓÐN±¶ÌáÉý£©¡£ËùÒÔ¼òµ¥µØ¿ÉÒÔÈÏΪ£¬Í¨¹ý¼¯ÈºÀ©Õ¹·þÎñÆ÷£¬¿ÉÒÔʹPHP·þÎñÐÔÄܵÃÓÚÌáÉý¡£
    ²»¹ý£¬ÎÒÃǸü¹ØÐĵÄÊǵ¥Ì¨PHP·þÎñÆ÷ÐÔÄÜÓÅ»¯ÌáÉý£¬ÈçºÎ¼«¾¡ËùÄÜ¡£ÓÅ»¯°üÀ¨PHPËù´¦µÄ·þÎñÆ÷¡¢ÔËÐл·¾³¼°Æä×ÔÉí£¬µ«·þÎñÆ÷ÄÚºËÅäÖá¢ÔËÐл·¾³nginx/apacheÓÅ»¯£¬±¾ÎIJ»Éæ¼°¡£

    2.PHPÀ©Õ¹Ê¹ÓÃ
    PHPÀ©Õ¹³ýÁËʹÓ÷½±ã£¬»¹ÊÇÌáÉýÐÔÄܵÄÇ×ÃÜ»ï°é¡£Ö÷ÒªÓ¦ÓÃÓÐÈýµã£º
    1). ¿ªÆôopcodeµÄ»º´æ£¬À´±ÜÃâÖØ¸´µÄ±àÒë¡£¿ÉÒÔʹÓÃAPC,eAccelerator,XCacheµÈPHPÀ©Õ¹£¬ÎÒÃÇʹÓÃxcache¡£ÕâÖÖÖ»Òª°²×°¼´¿ÉµÄÊ£¬ÎªÊ²Ã´²»Óã¿
    2). ʹÓÃÀ©Õ¹ÌṩµÄ·½·¨£¨»òPHP±ê×¼¿âµÄ·½·¨£©£¬À©Õ¹ÊµÏÖµÄЧÂʱÈPHP´úÂëÖеĸß¡£µ«Êµ¼ÊÉÏÂú×ãÎÒÃÇÏîÄ¿µÄÀ©Õ¹·½·¨ÓÐÏÞ£¬ºÜ¶à»ù´¡·½·¨ÐèҪʱһ²½·â×°£¬³ý·ÇÓÐÄÜÁ¦×Ô¼º¿ª·¢À©Õ¹¡£¿É¿¼ÂÇʹÓÃÀ©Õ¹ÊµÏÖµÄPHP¿ò¼Ü£¬Èçphalcon¡¢yaf¡£
    3). ±¾µØ»º´æ£¬Ò²³£ÓÃÀ©Õ¹À´Ö§³Ö£¬±ÈÈçxcache¡£±¾µØ¿ÉʹÓûº´æÀ©Õ¹£¬»º´æÒ»Ð©ÅäÖÃÊý¾Ý¡¢ÔªÊý¾Ý»òÖ÷Êý¾Ý£¬²»ÓÃÿ´Î¶¼´ÓÊý¾Ý¿â»òÎļþÖжÁÈ¡¡£
    Áí£¬PHP°æ±¾ÉÏ£¬ÏÖÔÚ¿ÉÒÔ¿¼ÂÇÉýµ½PHP7……

    3. Îļþ¼ÓÔØºÍ²Ù×÷
    ÕâÊǷdz£ÖØÒªµÄÓÅ»¯½¨Ò飬¾¡Á¿¼õÉÙÎļþµÄ¶Áд£¬Îļþ²Ù×÷°üÀ¨£ºÎļþ¶Á¡¢ÅжÏÎļþÊÇ·ñ´æÔÚ¡¢ÅжÏÎļþ´óС£¬ÌرðÊǶÔÓÚ´ÅÅÌ£¬¼õÉÙÎļþ²Ù×÷¼´¼õÉÙѰµÀʱ¼ä£¬¶Áȡʱ¼ä¡£¼õÉÙÒ»¸öÎļþ²Ù×÷£¬±ÈÓÅ»¯N¸öCPUÖ¸Árequest/request_once,echo/print,µ¥Òý»¹ÊÇË«Òý£©¡¢ÄÚ´æµÄÐÔÄÜЧ¹ûÒªºÃµÃ¶à¡£
    ʵ¼ÊÓ¦ÓÃÖУ¬¹Ø×¢ÒÔϼ¸¸öµØ·½£º
    1). °Ñ.htaccessµÄÄÚÈÝдµ½apacheÅäÖÃÖС£Æ½Ê±ÎÒÃǶ¼ÊÇͨ¹ý.htaccess×÷ΪÎļþ·ÅÖõ½PHPÏîÄ¿µÄ¸ùĿ¼ÖУ¬×÷ΪURLÖØÐ´ÅäÖõÈ¡£Õâ¾ÍÔì³Éÿ´ÎHTTPÇëÇ󣬶¼ÒªÏȶÁÈ¡.htaccess£¬¶àÁËÒ»´ÎÎļþ²Ù×÷¡£Í¨³£.htaccessÎļþÄÚÈÝÒ²²»ÐèÒªÐ޸ģ¬Òò´Ë¿É¿¼ÂÇÔÚapacheÖÐÅäÖ㬲¢½ûÓÃ.htaccessÎļþ¡£
    2). PHP³ÌÐòÖУ¬¼õÉÙfile_existsµÈÎļþ²Ù×÷º¯ÊýµÄʹÓá£ÔÚ·ÓÉ¿ò¼ÜÖУ¬ÅжÏÒªÒýÓõÄÎļþÊÇ·ñ´æÔÚ£¬Èç¹û²»´æÔÚÔòÏÔʾ´íÎ󣬴æÔÚÔòÖ´ÐÐÎļþÀïµÄÀà·½·¨£¬È磺
    [php] view plain copy print?


    • if (file_exists($invoke ['path'])) {
    •      request $invoke ['path'];
    •      //Ö´ÐÐÀà·½·¨
    • }else{
    •     //ÏÔʾ´íÎó
    • }



    Ϊʲô²»Ö±½Órequest $invoke ['path']ÄØ£¿ÆäʵÎÒÃÇ·ÃÎʵÄ·¾¶£¨Îļþ£©£¬Õý³£µÄ»°¶¼ÊÇ´æÔڵģ¬ËùÒÔû±ØÒªÊ¹ÓÃfile_existsÅжÏÊÇ·ñ´æÔÚ¡£µ«ÊÇ·ÃÎʵ½²»´æÔÚµÄÎļþÔõÃ´ÄØ£¿ÓÃset_error_handler·½Ê½È«¾Ö´¦Àí¡£µ«ÊÇÎÒÖ»Ïë¶Ôµ±Ç°ÒýÓÃÎļþ´íÎó×öÌØÊâ´¦Àí£¬°Ñ´íÎó´¦ÀíÁôÔÚ×Ô¼ºµÄ¿ò¼ÜÖУ¬²»Ê¹ÓÃÓû§µÄÈ«¾ÖµÄ´íÎó´¦ÀíÄØ£¿¿ÉÒÔÕâÑù £º
    [php] view plain copy print?


    • $hd = set_error_handler(array($this, "page_not_found"));
    • require $invoke ['path'];
    • if($hd){
    •     set_error_handler($hd);
    • }



    ÔÚrequireǰ£¬ÖØÐÂÉèÖÃÒ»¸ö´íÎó´¦Àí·½·¨A£¬²¢»á·µ»ØÖ®Ç°ÉèÖõĴíÎó´¦Àí·½·¨£»µ±requireÎļþ²»´æÔÚʱ£¬»áÖ´ÐÐA£¬requireÕý³£Ê±£¬ÖØÐ°ÑÓû§µÄerror_handlerÉèÖûØÈ¥¡£

    »¹ÓÐÒ»¸ö¾ÍÊÇÈÕÖ¾µÄ´¦Àí£¬¿ÉÄÜÿ´Î²Ù×÷ÈÕÖ¾¶¼ÒªÅжÏÒ»ÏÂÈÕÖ¾ÊÇ·ñ´æÔÚ£¨²»´æÔÚ¼´´´½¨£©ºÍ»ñÈ¡ÈÕÖ¾´óС£¨·Ö¸ôÈÕÖ¾Îļþ£©£¬Ò»°ãÀ´Ëµ£¬ÈÕÖ¾Îļþ´æÔڵĿÉÄÜÐÔ´ó£¬ËùÒÔÖ±½Ó»ñÈ¡Îļþ´óС¼´¿É£¬Í¨¹ý»ñÈ¡ÈÕÖ¾Îļþ´óСһ¸ö·½·¨filesize£¬Í¬Ê±¿ÉÅжÏÎļþÊÇ·ñ´æÔÚ£¬²»´æÔÚ´´½¨Îļþ¼´¿É¡£Õâ¾Í¼õÉÙÒ»¸öÎļþ²Ù×÷·½·¨µÄʹÓá£ÈçºÎʹÓÃfilesize¼´¿É»ñÈ¡´óС£¬ÓÖ¿ÉÅжÏÎļþÊÇ·ñ´æÔÚ£¬ÓÖ²»À뿪µ±Ç°Á÷³Ì£¬Õý³£Ö´ÐÐÏÂÈ¥ÄØ£¿´ó¼Ò¿ÉÒÔ˼¿¼Ò»Ï£¬ÒòΪfilesizeÒ»¸ö²»´æÔÚµÄÎļþÊǻᱨ´íÎóµÄŶ¡£
    ×ÜÖ®£¬Ö»ÒªÊÇÎļþ´æÔڵĿÉÄÜÐÔ»òÕßÃüÖÐÂʸߣ¬¾Í¿É¿¼ÂDz»ÒªÊ¹ÓÃfile_exists¡£


    3). ÀàµÄ¼ÓÔØÖУ¬Ê¹Óþ«È·¼ÓÔØ²¢»º´æ£¬²»Òª±éÀúĿ¼ÎļþµÄ·½Ê½¡£Èç¹ûÔÚÒ»¸öÇëÇóÖУ¬Ö»¼ÓÔØÇÒÖ»¼ÓÔØÒ»´ÎÐèÒªµÄÀàÎļþÊÇ×îºÃµÄ¡£

    4). ½«Îļþ»º´æ×ª³ÉÄڴ滺´æ¡£

    4. ¿ò¼ÜµÄѡȡ
    ³ýÁËÉÏÃæËµµÄPHPÀ©Õ¹¿ò¼Ü£¬»¹ÓкܶàÆäËü·ÇÀ©Õ¹ÊµÏÖµÄPHP¿ò¼Ü£¬Ïñthinkphp,laravel£¬ÕâЩ¿ò¼ÜÊÇͨÓõÄ£¬·â×°ºÃ¡¢¹¦ÄÜÈ«£¬µ«×ÔÉí»áËðºÄÒ»¶¨µÄÐÔÄÜ£¬Ö÷ÒªÔ­ÒòÎÒÈÏΪÊǼÓÔØµÄÎļþÌ«¶à¡¢¶¨ÒåµÄ·½·¨±äÁ¿¡¢¼ì²âµÄ¶«Î÷Ì«¶à¡¢Ö´ÐеÄÁ÷³ÌÌ«³¤¡£µ«¼ÈÈ»ÓÃÁË£¬Õâ¸öµÃ½ÓÊÜ£¬ÄÜ×öµÄÊÇÔÚÓ﷨ϸ½Ú¡¢´úÂëÂß¼­ÉϽøÐÐÓÅ»¯¡£½ö¾Í´úÂëÖ´ÐУ¨Ã»ÓÐÍⲿµ÷Ó㬠Êý¾Ý¿âÁ¬½ÓµÈ£©£¬¿ò¼ÜµÄÖ´ÐÐʱ¼äÔ¶Ô¶´óÓÚÓ¦ÓôúÂëÖ´ÐÐʱ¼ä£¬Èç¹ûÄ㻹ÓÃÉÏsmartyÄ£¿éÒýÇæ£¬ÐÔÄܱشó´òÕÛ¿Û¡£µ«ÊdzýÁËÐÔÄÜÉÏ¿¼ÂÇ£¬»¹ÓкܶàÆäËüÒòËØÖµµÃÀûÓÃÕâЩ³ÉÊì¿ò¼ÜµÄ¡£Èç¹û¾õµÃÐÔÄÜÊÇÒª¿¼Âǵķ½Ã棬¿ÉÒÔÑ¡ÔñÇáÁ¿Ò»µã¡¢Å¼ºÏÐÔСµÄ¿ò¼Ü¡¢»òֻѡȡÐèÒªµÄ×é¼þ¡£

    5.¹¦ÄÜ×é¼þµÄʹÓÃ
         ×éºÏʹÓã¬ÐèÒª¶ÔÕû¸ö¿ò¼ÜÓÐÒ»¸öÈÏʶºÍ°Ñ¿Ø¡£
    1). Èç¹û¿ÉÒÔÑ¡ÓÃ×é¼þ£¬µÚÒ»¸öÑ¡ÔñµÄ¾ÍÊÇ·ÓÉ×é¼þÁË£¬ÄÜ·½±ãµØÂ·Óɵ½Ö¸¶¨¿ØÖÆÆ÷·½·¨¼´¿É£¬²»Òª×ö¶àÓàµÄÊ£¬ÉÙÓÃÕýÔòÆ¥Å䣬Լ¶¨ÓÅÓÚÅäÖá£
    2). Àà¼ÓÔØ¹¦ÄÜ¡£ÉÏÃæËµµÄ£¬°´Ð辫ȷ¼ÓÔØ²¢»º´æ£¬Ò»´ÎÇëÇóÓÐÇÒÖ»requireÒ»´Î¡£ÎÒÃÇÏîÄ¿ÀàµÄ¼ÓÔØºÜԭʼ£¬require_once and new¡£
    3). ²ÎÊýУÑéºÍ°²È«´¦Àí¡£Êµ¼ÊÉÏÕâ¸öÒ²ÊÇÏà¶ÔºÄ·ÑÐÔÄܵĹý³Ì£¬µ«ÎªÁ˰²È«»¹ÊÇÓбØÒªµÄ¡£ÄÜ×öµ½°´Ðè²ÎÊý´¦Àí×îºÃ£¬µ«ÊÇÓÐʱΪ·½±ã£¬»¹ÊÇ»áÔÚÈë¿Ú´¦È«¾Ö´¦Àí°²È«¹ýÂË£¬²ÎÊýУÑé¾Í¿ÉÒÔÔÚ¿ØÖÆÆ÷·½·¨Öд¦Àí¡£
    4). session£¬¼òµ¥µØÍ¨¹ýÅäÖñ£´æµ½Redis/memcacheµÈ»º´æÖУ¬»òÕß´æµ½cookieÖС£µ«ÊǸù¾ÝĬÈϵĻúÖÆ£¬session³õʼ»¯£¨¶ÁÈ¡£©ºÍÇëÇó½áÊø£¨Ð´»Ø£©£¬»á²úÉúÁ½´ÎÍøÂç²Ù×÷¡£¸ù¾ÝÎÒÃÇÓ¦Óó¡¾°·ÖÎö£¬sessionÄÚÈÝÊDz»³£±äµÄ£¬ÔÚ²»±äµÄÇé¿öÏ¿ɿ¼ÂÇÖ»¶Á¶ø²»Ð´»Ø£¨Òò´ËÒ²¾ÍÓв»ÄܸüÐÂsessionÐÞ¸Äʱ¼ä µÄÎÊÌ⣩£¬Õâ¾ÍÒª×Ô¼ºÊµÏÖPHP»á»°µÄ½Ó¿ÚÁË£¬Ö»Óе±ÓÐsessionÐÞ¸Äʱ£¬±ä¸üµÄʱºò²Å»ØÐ´session´æ´¢£¬ÕâÑù£¬ÉÙÒ»¸öÍøÂç²Ù×÷¿ÉÊ¡¶àÉÙʱ¼ä°¡¡£ÓÐЩʵÏֵò»ºÃµÄ£¬ÔÚÒ»¸öÇëÇóÖжà´ÎÁ¬½Ó»ò¶à´Î²Ù×÷´æ´¢µÄ£¬¾Í²»¿ÉÈ¡ÁË¡£ÁíÍ⣬½áºÏcookieSession£¬¼´°Ñsession¼ÓÃÜ´æµ½cookieÖУ¬¶ÔsessionµÄ´¦ÀíÒ²»á¼õÉٺܶàºÄʱ¡£
    5). ÊÓͼģ°åÒýÇæ¡£Èç¹ûÊÇAPIÀà½Ó¿Ú·þÎñ£¬Ö±½Ó·µ»ØÊý¾Ý£¬Èç¹ûÊÇÍøÒ³£¬ÄǾÍÐèҪʹÓÃÄ£°åÒýÇæÁË¡£Ä£°åÒýÇæÒ²ÊǺܺķÑÐÔÄܵÄÖ÷£¬µ±È»£¬Ï²»¶Ô­Éú̬µÄ·½Ê½£¬ÄÇÊÇ×î¸ßЧµÄ£¬ÏñsmartyÕâÖÖ£¬´ó¶øÈ«£¬ÐÔÄܵÍЧ£¬¶øÇҺܶ๦ÄÜÎÒÃǶ¼Óò»ÉÏ¡£ÎÒÃÇʹÓÃÄ£°åÒýÇæ£¬×îºËÐĵÄÊÇhtmlÓëPHP·ÖÀ룬Ȼºó²ÅÊDZäÁ¿ÓëÓï·¨µÄ´¦Àí¡£ËùÒÔ£¬ÒªÏíÊÜÄ£°åÒýÇæµÄ·ÖÀëºÃ´¦£¬ÓÖ×·ÇóÐÔÄÜ£¬ÄÇ¿ÉÒԲο¼tmd_tpl¡£Ö»ÊµÏÖ·ÖÀ룬Óï·¨ÉÏʹÓÃPHPÓï·¨£¬ÒòΪÈç¹ûÒª×Ô¼ºÊµÏÖÒ»Ì×Óï·¨£¬ÐèÒª´óÁ¿µÄ²éÕÒºÍÌæ»»¡£Í¬ÑùÔÚÄ£°åÒýÇæÖУ¬¿ÉÒÔ½øÒ»²½ºÏ²¢¶à¸öÊÓͼÎļþΪһ¸ö£¬¼õÉÙÎļþ²Ù×÷µÈ·½Ê½À´ÓÅ»¯¡£
    6). Êý¾Ý¿â·½Ã档ʹÓÃPDO£¬ORMʹÓ÷½±ãµ«Ò²ÓÐÒ»¶¨ºÄʱ£¬Êý×é×÷ΪÊý¾Ý¶ÔÏó×î¸ßЧ£¬Ò»°ãÓöÌÁ¬½Ó£¬Ê¹Óõ¥ÀýÁ¬½Ó¶ÔÏó»òÁ¬½Ó³Ø£¨ÓÐЩÀ©Õ¹¿ÉÖ§³Ö£©¡£
    ÆäËûÄÚÈÝ´ý²¹³ä...

    ×÷ÕߣºÀÖÓã²¥¿ÍPHPÅàѵѧԺ
    Ê×·¢£ºhttp://php.itcast.com/

    0 ·ÖÏíµ½£º
    ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
    ¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿