澳门威利斯人_威利斯人娱乐「手机版」

来自 澳门威利斯人 2019-07-21 05:18 的文章
当前位置: 澳门威利斯人 > 澳门威利斯人 > 正文

动态配置,2框架自定义配置和加载用法示例

到此,setting.config.php文件的布局参数的值,已经被更新;

(Thinkphp3.1版本,已经支撑C函数保存设置的参数值,所以,本办法,适合于3.0及以下版本的TP)

奇迹大家会有点平整定义每一种数字对应的骨子里内容,比方说在下拉菜单的时候:

<?php
return array(
  'setting'=>array(
    'tel' => '400-088-7380',
        'qq'  => '88888888',
        ......
    ),
);
?>
    1. $settingstr="<?php n return array(n'Setting' =>array(n";
  1.  foreach($c as $key=>$v){
  2.     $settingstr.= "t'".$key."'=>'".$v."',n";
  3.  }
  4. $settingstr.="),n);n?>n";
  5. file_put_contents($setfile,$settingstr); //通过file_put_contents保存setting.config.php文件;

图片 1←数据仓库储存的法力

愈来愈多关于thinkPHP相关内容感兴趣的读者可查看本站专项论题:《ThinkPHP入门教程》、《thinkPHP模板操作本事计算》、《ThinkPHP常用艺术总计》、《codeigniter入门教程》、《CI(CodeIgniter)框架进级教程》、《Zend FrameWork框架入门教程》及《PHP模板工夫计算》。

    1. $settingstr = "<?php n return array(n'Setting' =>n".var_export($c,true)." n ?>";
  1. file_put_contents($setfile,$settingstr); //通过file_put_contents保存

就能够输入这一个数组的开始和结果

在后台,创建一个职能,将setting.config.php的暗中认可值读出,并出示在七个表单中。这里可以动用TP的C函数达成。然后,就能够在表单中对种种参数的值进行安装。表单提交保存后,将表单提交的值,实行管理,具体代码如下:

保留配置参数的操作

那一个事例里,实际彰显的是汉字,实际的value值是数字,等我们向数据仓库储存的时候也是存数字,等大家从数据库获取的时候也是取数字,呈现的时候也是显得汉字;

//RUNTIME_FILE常量是入口文件中配置的runtimefile的路径及文件名;
if(file_exists(RUNTIME_FILE)){
  unlink(RUNTIME_FILE); //删除RUNTIME_FILE;
}

复制代码

如此就完结了自定义配置文件的安装和加载。

光删除runtime_file还非常不够,要清空一下Cache文件夹中的文件;代码如下:

  1. <?php
  2. return array(
  3.     'setting'=>array(
  4.         'tel'  => '400-088-7380',
  5.                 'qq'   => '88888888',
  6.                 ......
  7.         ),
  8. );
  9. ?>

图片 2←实效

(Thinkphp3.1版本,已经支撑C函数保存设置的参数值,所以,本办法,适合于3.0及以下版本的TP)

复制代码

<select name="reasonAndType" id="">
  <option value="1">查询物流</option>
  <option value="2">办理退货</option>
  <option value="3">咨询退货</option>
  <option value="4">咨询佣金</option>
  <option value="5">咨询规则</option>
  <option value="0">其他</option>
</select>

写入文件是个数组不假,可是足以参照他事他说加以考察一下var_export函数,不要求去循环数组了!

其它,大家知道TP在首先次运转时会把品种全体的布局文件,配置参数等,生成一个runtime缓存文件,即使大家创新了congfig 的内容,那么必须删除项目中的缓存文件后本事奏效。为此,大家让系统和睦来清空缓存,更新参数。代码如下:

$reasonAndTypeX = C('REASON_AND_TYPE');
//直接用数组名字就可以了,C()函数能加载配置里的键名所代表的值,赋给变量
$settingstr = "<?php n return array(n'Setting' =>n".var_export($c,true)." n ?>";
file_put_contents($setfile,$settingstr); //通过file_put_contents保存
  1. //RUNTIME_FILE常量是进口文件中布署的runtimefile的不二等秘书技及文件名;
  2. if(file_exists(RUNTIME_FILE)){
  3.     unlink(RUNTIME_FILE); //删除RUNTIME_FILE;
  4. }
  5. 光删除runtime_file还相当不够,要清空一下Cache文件夹中的文件;代码如下:
  6. $cachedir=RUNTIME_PATH."/Cache/";   //Cache文件的路子;
  7. if ($dh = opendir($cachedir)) {     //打开Cache文件夹;
  8.     while (($file = readdir($dh)) !== false) {    //遍历Cache目录,
  9.               unlink($cachedir.$file);                //删除遍历到的每一个文本;
  10.     }
  11.     closedir($dh);
  12. }    

下边讲调用那套法规:

以上代码能够修改为:

  1. function SaveSetting(){
  2. //setting.config.php文件的路线,通过settingfile_path来设定;
  3. $setfile='./Home'.C('settingfile_path'); 
  4. $a=C('setting');  //将暗许配置参数的内容赋值给$a;
  5. $b=array(
  6.    'tel' => $_POST['tel'],
  7.    'web' => $_POST['web'],
  8.    ........
  9. );
  10. //这里将新的参数值,通过后台的表单提交过来;
  11.         
  12. $c=array_merge($a,$b) ;

在意,格式,return八个数组,键名是大写的(为了为难),键值是你要定义的事物,在那边我们定义的是贰个数组。

function SaveSetting(){
//setting.config.php文件的路径,通过settingfile_path来设定;
$setfile='./Home'.C('settingfile_path');
$a=C('setting'); //将默认配置参数的内容赋值给$a;
$b=array(
  'tel' => $_POST['tel'],
  'web' => $_POST['web'],
  ........
);
//这里将新的参数值,通过后台的表单提交过来;
$c=array_merge($a,$b) ;

到此,setting.config.php文件的布署参数的值,已经被更新;

那尽管配置好了。

二、实现动态管理参数

  1. $settingstr="<?php n return array(n'Setting' =>array(n";
  2. foreach($c as $key=>$v){
  3.     $settingstr.= "t'".$key."'=>'".$v."',n";
  4. }
  5. $settingstr.="),n);n?>n";
  6. file_put_contents($setfile,$settingstr); //通过file_put_contents保存setting.config.php文件;
var_dump($reasonAndTypeX);

企望本文所述对大家基于ThinkPHP框架的PHP程序设计具有补助。

然后,将合併后的数组$c的值举办遍历后,生成php文件代码;

上代码了:

本文由澳门威利斯人发布于澳门威利斯人,转载请注明出处:动态配置,2框架自定义配置和加载用法示例

关键词: 澳门威利斯人