Cet article présente principalement la méthode de lecture et de configuration C dans thinkPHP, et analyse la fonction, l'emplacement, le regroupement et la méthode de lecture du fichier de configuration thinkPHP sous forme d'exemples. Les amis dans le besoin peuvent s'y référer
Les exemples de cet article décrivent les méthodes de lecture et de configuration C dans thinkPHP. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :1. Configuration publique du projet
Conf/config.phpLe contenu est le suivant<?php /** *项目公共配置 *@package *@author **/ return array( 'LOAD_EXT_CONFIG' => 'db,info,email,safe,upfile,cache,route,app,alipay,sms,platform,store,pay', 'APP_AUTOLOAD_PATH' => '@.ORG', 'OUTPUT_ENCODE' => true, //页面压缩输出 'PAGE_NUM' => 15, /*Cookie配置*/ 'COOKIE_PATH' => '/', // Cookie路径 'COOKIE_PREFIX' => '', // Cookie前缀 避免冲突 /*定义模版标签*/ 'TMPL_L_DELIM' =>'{sh:', //模板引擎普通标签开始标记 'TMPL_R_DELIM' =>'}', //模板引擎普通标签结束标记 'TMPL_CACHE_ON' => false, //关闭模板缓存 'DEFAULT_GROUP' => 'Home', //默认访问分组,设置默认入口 'APP_GROUP_LIST' => 'Agent,Home,System,User,Store,Wap,Mall,Opener', // 项目分组设定,多个组之间用逗号分隔,例如'Home,Admin' 'PUBLIC_RESOURSE' => './Public/', 'URL_404_REDIRECT' => './Tpl/404.html', ); ?>
2. Si le regroupement de modules est activé, vous pouvez définir un fichier de configuration pour chaque groupe séparément. Le fichier de configuration de regroupement se trouve dans :
Répertoire/groupe de configuration du projet. name/ config.php'APP_GROUP_LIST' => 'Home,Admin', //项目分组设定 'DEFAULT_GROUP' => 'Home', //默认分组
Conf/Home/config.php Conf/Admin/config.php
Remarque : Le nom du groupe est sensible à la casse et doit être cohérent avec le nom du groupe défini.
3. Lisez la configuration
Après avoir défini le fichier de configuration, vous pouvez utiliser la méthode C fournie par le système (si vous vous sentez bizarre, vous pouvez utilisez le mot de configuration Pour aider la mémoire) pour lire la configuration existanteC('参数名称')//获取已经设置的参数值
C('USER_CONFIG.USER_TYPE')//获取用户配置中的用户类型设置
'HTML_CACHE_TIME' => 60, //静态缓存有效期(秒) 'HTML_CACHE_TIME' => 80,
'LOAD_EXT_CONFIG' => 'db,info,email,safe,upfile,cache,route,app,alipay,sms,platform,store,pay'
/** * 获取和设置配置参数 支持批量定义 * @param string|array $name 配置变量 * @param mixed $value 配置值 * @return mixed */ function C($name=null, $value=null) { static $_config = array(); // 无参数时获取所有 if (empty($name)) { if(!empty($value) && $array = cache('c_'.$value)) { $_config = array_merge($_config, array_change_key_case($array)); } return $_config; } // 优先执行设置获取或赋值 if (is_string($name)) { if (!strpos($name, '.')) { $name = strtolower($name); if (is_null($value)) return isset($_config[$name]) ? $_config[$name] : null; $_config[$name] = $value; return; } // 二维数组设置和获取支持 $name = explode('.', $name); $name[0] = strtolower($name[0]); if (is_null($value)) return isset($_config[$name[0]][$name[1]]) ? $_config[$name[0]][$name[1]] : null; $_config[$name[0]][$name[1]] = $value; return; } // 批量设置 if (is_array($name)){ $_config = array_merge($_config, array_change_key_case($name)); if(!empty($value)) {// 保存配置值 cache('c_'.$value,$_config); } return; } return null; // 避免非法参数 }
Analyse de la méthode N de ThinkPHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!