我是靠谱客的博主 高挑咖啡豆,最近开发中收集的这篇文章主要介绍ThinkPHP学习笔记(8)在网页中配置Config文件内容,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在TP或者是别的程序的编程中,我们经常会用到配置文件来动态的控制程序的一些行为或表现。

在TP框架中,默认的配置文件是放在Conf目录下,并写作PHP数组的形式,如

<?php
return array(
	//开启项目分组
	//开启分组
	'APP_GROUP_LIST' => 'Index,Admin',
	// 默认分组
	'DEFAULT_GROUP' => 'Index',
	'APP_GROUP_MODE' => 1,
	'APP_GROUP_PATH' => 'Modules',

	//扩展配置项
	'LOAD_EXT_CONFIG' => 'verify',

	// 数据库连接参数
	'DB_HOST' => '127.0.0.1',
	'DB_USER' => 'root',
	'DB_PSW'  => '',
	'DB_NAME' => 'blog',
	'DB_PREFIX' => 'hd_',
);
?>

那么,我们是否可以利用PHP的文件读写函数,以及模板文件来在网页上动态设置配置文件的内容呢?答案是肯定的。

要动态设置配置文件内容,我们需要以下几点知识:

1、在模板中读取配置文件内容,可以使用方法{$Think.config.(配置文件条目名称,不区分大小写)}

2、一个路径字符串预定义变量CONF_PATH

3、TP中的文件读写函数F

有了以上几点知识,我们就可以网页中动态配置Config文件内容了。

首先,在模板文件里面,建立表单,并让表单的内容默认为当前配置文件设置的内容(通过Think.config函数)。

<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<link rel="stylesheet" type="text/css" href="__PUBLIC__/Css/public.css"/>
</head>
<body>
	<form action="{:U(GROUP_NAME."/System/updataVerify")}" method="POST">
		<table class="table">
			<tr>
				<th colspan='2'>验证码配置</th>
			</tr>
			<tr>
				<td align="right">验证码长度</td>
				<td><input type="text" name="VERIFY_LENGTH" value="{$Think.config.verify_length}"/></td>
			</tr>
			<tr>
				<td align="right">验证码宽度</td>
				<td><input type="text" name="VERIFY_WIDTH" value="{$Think.config.verify_width}"/></td>
			</tr>
			<tr>
				<td colspan="2" align="center">
					<input type="submit" value="保存修改">
				</td>
			</tr>	
		</table>
	</form>
</body>
</html>
<!--上面{$Think.config.verify_length},{$Think.config.verify_width} 分别读取config文件中的verify_length,verify_width字段-->

然后,在PHP的控制器处理表单函数中,读取POST过来的数据(是一个php数组,形式正好与配置文件相同,不过要确保表单中各项的name属性与配置文件条目名称相同)
	public function updataVerify()
	{
		//写文件函数F(文件名,数据,文件路径)
                // 在这里我们应用了路径变量字符CONF_PATH,它会自动定位到我们项目工程的Config文件夹目录下
                if(F("verify", $_POST, CONF_PATH))
		{
			$this->success("修改成功", U(GROUP_NAME."/System/verify"));
		}
		else
		{
			$this->error("修改失败,请手动修改".CONF_PATH."verify.php文件");
		}

	}

通过F函数,我们就可以覆盖原文件中的内容,并且会返回布尔值,来表示是否覆盖成功。

这样,我们就通过网页的形式,动态的配置配置文件的内容了。

PS:如何添加自定义配置文件。

使用C函数和$Think.config函数获取配置文件中的项的内容,他们都会自动寻找在Config文件夹下的Config.php文件中的内容。若要想在自定义的配置文件中寻找,需要把自定义配置文件名称在Config.php文件中进行配置,并可以添加多个配置文件。配置项为:

//扩展配置项
	'LOAD_EXT_CONFIG' => 'verify,wac',
配置项中添加了两个配置文件verify.php,wac.php,并将这两个文件放入到Config文件夹下面。这样,再调用C或者$Think.config函数时,就可以找到这两个配置文件中的条目了。


最后

以上就是高挑咖啡豆为你收集整理的ThinkPHP学习笔记(8)在网页中配置Config文件内容的全部内容,希望文章能够帮你解决ThinkPHP学习笔记(8)在网页中配置Config文件内容所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部