ǰ¶Îʱ¼ä£¬ThinkPHP µÄÕûÌåÉè¼ÆË¼Â·£¬°üÀ¨ ¸÷¸öÄ£¿éµÄʵÏÖ¡£
TP¹Ù·½ÎªÁ˲âÊԸÿò¼Ü£¬Ð´ÁËÒ»¸öONEThink£¬ÊÇ¿ÉÒÔѧϰϵÄ
²»Ì«ÍƼöʹÓÃÕâ¸ö£¬¸Ð¾õ¾ÍÊDzâÊÔÐÔÖÊ¡£µ«ÊÇÄã¿ÉÒÔÌå»áÏÂËûµÄÉè¼ÆË¼Â·£¬¼ÌÐøÉ˼¿¼£¬¾Í¿ÉÒÔÖØÐÂдһ¸öÊʺÏ×Ô¼ºµÄ¡£
±ÈÈ磺²âÊÔ¸÷ÖÖ»·¾³£¬ÓÃÊý×é×éºÏÒ»ÏÂÊý¾ÝÐÅÏ¢
$items = array( ¡®os¡® => array(¡®²Ù×÷ϵͳ¡®, ¡®²»ÏÞÖÆ¡®, ¡®ÀàUnix¡®, PHP_OS, ¡®success¡®), ¡®php¡® => array(¡®PHP°æ±¾¡®, ¡®5.3¡®, ¡®5.3+¡®, PHP_VERSION, ¡®success¡®), ¡®upload¡® => array(¡®¸½¼þÉÏ´«¡®, ¡®²»ÏÞÖÆ¡®, ¡®2M+¡®, ¡®Î´Öª¡®, ¡®success¡®), ¡®gd¡® => array(¡®GD¿â¡®, ¡®2.0¡®, ¡®2.0+¡®, ¡®Î´Öª¡®, ¡®success¡®), ¡®disk¡® => array(¡®´ÅÅ̿ռ䡮, ¡®5M¡®, ¡®²»ÏÞÖÆ¡®, ¡®Î´Öª¡®, ¡®success¡®), );
È»ºó¿ÉÒÔÀûÓÃÒýÓÃÀ´ÊµÏÖÊý¾ÝµÄʵʱ¸ü¸Ä
foreach ($items as &$val)
ÔÙ±ÈÈ磺×Ô¶¯»¯µÄһЩ˼·£¬Ð´ºÃÒ»²¿·ÖÅäÖÃÎļþ»òÕßSQLÓï¾ä»òÕßÊä³öÎļþµÄÄ£°å£¬È»ºóÌæ»»Ò»²¿·ÖÐÅÏ¢
conf.tpl
<?php// +----------------------------------------------------------------------// | OneThink [ WE CAN DO IT JUST THINK IT ]// +----------------------------------------------------------------------// | Copyright (c) 2013 http://www.onethink.cn All rights reserved.// +----------------------------------------------------------------------// | Author: Âóµ±Ãç¶ù <zuojiazi@vip.qq.com> <http://www.zjzit.cn>// +----------------------------------------------------------------------/** * ϵͳÅäÎļþ * ËùÓÐϵͳ¼¶±ðµÄÅäÖà */return array( /* Ä£¿éÏà¹ØÅäÖà */ ¡®AUTOLOAD_NAMESPACE¡® => array(¡®Addons¡® => ONETHINK_ADDON_PATH), //À©Õ¹Ä£¿éÁÐ±í ¡®DEFAULT_MODULE¡® => ¡®Home¡®, ¡®MODULE_DENY_LIST¡® => array(¡®Common¡®,¡®User¡®,¡®Admin¡®,¡®Install¡®), //¡®MODULE_ALLOW_LIST¡® => array(¡®Home¡®,¡®Admin¡®), /* ϵͳÊý¾Ý¼ÓÃÜÉèÖà */ ¡®DATA_AUTH_KEY¡® => ¡®[AUTH_KEY]¡®, //ĬÈÏÊý¾Ý¼ÓÃÜKEY /* Óû§Ïà¹ØÉèÖà */ ¡®USER_MAX_CACHE¡® => 1000, //×î´ó»º´æÓû§Êý ¡®USER_ADMINISTRATOR¡® => 1, //¹ÜÀíÔ±Óû§ID /* URLÅäÖà */ ¡®URL_CASE_INSENSITIVE¡® => true, //ĬÈÏfalse ±íʾURLÇø·Ö´óСд trueÔò±íʾ²»Çø·Ö´óСд ¡®URL_MODEL¡® => 3, //URLģʽ ¡®VAR_URL_PARAMS¡® => ¡®¡®, // PATHINFO URL²ÎÊý±äÁ¿ ¡®URL_PATHINFO_DEPR¡® => ¡®/¡®, //PATHINFO URL·Ö¸î·û /* È«¾Ö¹ýÂËÅäÖà */ ¡®DEFAULT_FILTER¡® => ¡®¡®, //È«¾Ö¹ýÂ˺¯Êý /* Êý¾Ý¿âÅäÖà */ ¡®DB_TYPE¡® => ¡®[DB_TYPE]¡®, // Êý¾Ý¿âÀàÐÍ ¡®DB_HOST¡® => ¡®[DB_HOST]¡®, // ·þÎñÆ÷µØÖ· ¡®DB_NAME¡® => ¡®[DB_NAME]¡®, // Êý¾Ý¿âÃû ¡®DB_USER¡® => ¡®[DB_USER]¡®, // Óû§Ãû ¡®DB_PWD¡® => ¡®[DB_PWD]¡®, // ÃÜÂë ¡®DB_PORT¡® => ¡®[DB_PORT]¡®, // ¶Ë¿Ú ¡®DB_PREFIX¡® => ¡®[DB_PREFIX]¡®, // Êý¾Ý¿â±íǰ׺ /* ÎĵµÄ£ÐÍÅäÖà (ÎĵµÄ£ÐͺËÐÄÅäÖã¬ÇëÎð¸ü¸Ä) */ ¡®DOCUMENT_MODEL_TYPE¡® => array(2 => ¡®Ö÷Ìâ¡®, 1 => ¡®Ä¿Â¼¡®, 3 => ¡®¶ÎÂä¡®),);
È»ºóдһ²¿·ÖÌæ»»
$conf = str_replace(¡®[AUTH_KEY]¡®,$auth,$conf);$user = str_replace(¡®[AUTH_KEY]¡®,$auth,$conf);
»òÕß˵ÆðÀ´µÄÌæ»»»òÕß¶ÁȡִÐÐ
//¶ÁÈ¡SQLÎļþ $sql = file_get_contents(MODULE_PATH . ¡®Data/install.sql¡®); $sql = str_replace("\r", "\n", $sql); $sql = explode(";\n", $sql); //Ìæ»»±íǰ׺ $orginal = C(¡®ORIGINAL_TABLE_PREFIX¡®); $sql = str_replace(" `{$orginal}", " `{$prefix}", $sql);
ÔÙ±ÈÈ磺TPµÄÀ©Õ¹×îºËÐĵľÍÊÇBehavior
дһ¸ötags.php
return array(¡®app_init¡®=>array(¡®Common\Behavior\InitHookBehavior¡®));
ÕâÑù¾Í¿ÉÒÔʹÓÃÄãÏëÓõÄ×é¼þÀ´½øÐÐÄ£°å½âÎö£¬¸÷ÖÖȨÏÞ¹ÜÀí£¬Â·ÓÉ¿ØÖÆ£¬Ó¦ÓõÄǰÖúóÖô¦Àí£¬Ò»Ð©ºáÏòÇÐÃæµÄ¹¤¾ß
ÕâÑù¾Í¿ÉÒÔ¶¯Ì¬¼Ó½øÀ´ºÜ¶à×é¼þ£¬Ò²¾ÍʵÏÖÁËÀ©Õ¹£¬ÄãµÄ¿ò¼ÜµÄºËÐIJ»ÔÚÓÚ×é¼þ£¬¶øÊÇÄãÈçºÎÈÃÊý¾ÝÁ÷¶¯£¬×éºÏ£¬ÒÔ¼°½²¹ÊÊ¡£ÕâÊdzÌÐò×îÖµµÃ³ÆÔ޵ط½
¸½Â¼ÏÂËûµÄInithookBehavior
class InitHookBehavior extends Behavior{public function run(&$content){if(defined(¡®BIND_MODULE¡®) && BIND_MODULE === ¡®Install¡®) return ;$data = S(¡®hooks¡®);if(!$data){$hooks = M(¡®Hooks¡®)->getField(¡®name,addons¡®);foreach ($hooks as $key => $value) {# code...if($value){$map[¡®status¡®] = 1;$names = explode(¡®,¡®,$value);$map[¡®name¡®] = array(¡®in¡®,$names);$data = M(¡®Addons¡®)->where($map)->getField(¡®id,name¡®);if($data){$addons = array_intersect($names, $data);Hook::add($key,array_map(¡®get_addon_class¡®,$addons));}}}S(¡®hooks¡®,Hook::get());}else{Hook::import($data,false);}}}//¸½¼Ó×é¼þaddons//Óɹ³×ÓÈ¥¸½¼þÀïÃæÈ¥ÕÒÏàÓ¦µÄ×é¼þ
Õâ¾ÍÉæ¼°µ½×Ô¶¯»¯ÔËάµÄ¸Ð¾õ£¬Õâ¾ÍÈÃÈËÏëÆðÀ´python¡£
¾ÍдÕâô¶à°É£¬¼¼ÊõÊÇÊôÓÚÿ¸öÈ˵ģ¬Ã¿¸öÈ˵ÄDZÁ¦²»Í¬£¬ÎÒÃÇÉí±ßÓкܶàÈ˵ÄÐËȤµãÒ²ÊDz»Ò»ÑùµÄ¡£Õչ˺Ã×Ô¼ºµÄÉú»îÉíÌåÖ®ºó£¬Ç°Íù¶¥·å¡£
Ô¸·¨½çÖÚÉú£¬½ÔµÃ°²ÀÖ
±¾Îijö×Ô ¡°Ò»Õ¾Ê½½â¾ö·½°¸¡± ²©¿Í£¬ÇëÎñ±Ø±£Áô´Ë³ö´¦http://10725691.blog.51cto.com/10715691/1963481
ѧϰ˼·֮ONETHINK
ÔÎĵØÖ·£ºhttp://10725691.blog.51cto.com/10715691/1963481