首頁  >  文章  >  php教程  >  配置文件操作.如config.php文件的读取修改等操作

配置文件操作.如config.php文件的读取修改等操作

PHP中文网
PHP中文网原創
2016-05-25 17:13:191058瀏覽

对形如config.php文件的读取,修改等操作 

ed31d05440768161a870c8bc0f95f5d4


函数定义: 
    配置文件数据值获取:function getconfig($file, $ini, $type="string") 
    配置文件数据项更新:function updateconfig($file, $ini, $value,$type="string") 

调用方式: 

    getconfig("./2.php", "bb");//

    updateconfig("./2.php", "kkk", "admin");

                   

1. [代码][PHP]代码   

<?php

//配置文件数据值获取。
//默认没有第三个参数时,按照字符串读取提取&#39;&#39;中或""中的内容
//如果有第三个参数时为int时按照数字int处理。
function getconfig($file, $ini, $type="string")
{
	if ($type=="int")
	{
		$str = file_get_contents($file);
		$config = preg_match("/" . $ini . "=(.*);/", $str, $res);
		Return $res[1];
	}
	else
	{
		$str = file_get_contents($file);
		$config = preg_match("/" . $ini . "=\"(.*)\";/", $str, $res);
		if($res[1]==null)
		{	
			$config = preg_match("/" . $ini . "=&#39;(.*)&#39;;/", $str, $res);
		}
		Return $res[1];
	}
} 

//配置文件数据项更新
//默认没有第四个参数时,按照字符串读取提取&#39;&#39;中或""中的内容
//如果有第四个参数时为int时按照数字int处理。
function updateconfig($file, $ini, $value,$type="string")
{
	$str = file_get_contents($file);
	$str2="";
	if($type=="int") 
	{	
		$str2 = preg_replace("/" . $ini . "=(.*);/", $ini . "=" . $value . ";", $str);
	}
	else 
	{
		$str2 = preg_replace("/" . $ini . "=(.*);/", $ini . "=\"" . $value . "\";", $str);
	}
	file_put_contents($file, $str2);
} 


//echo getconfig("./2.php", "bb", "string");
getconfig("./2.php", "bb");//
updateconfig("./2.php", "kkk", "admin");
//echo "<br/>".getconfig("./2.php", "name","string");

?>


2. [代码][PHP]代码    

//完善改进版


/**
 * 配置文件操作(查询了与修改)
 * 默认没有第三个参数时,按照字符串读取提取&#39;&#39;中或""中的内容
 * 如果有第三个参数时为int时按照数字int处理。
 *调用demo
	$name="admin";//kkkk
	$bb=&#39;234&#39;;
	
	$bb=getconfig("./2.php", "bb", "string");
	updateconfig("./2.php", "name", "admin");
*/
function get_config($file, $ini, $type="string"){
	if(!file_exists($file)) return false;
	$str = file_get_contents($file);
	if ($type=="int"){
		$config = preg_match("/".preg_quote($ini)."=(.*);/", $str, $res);
		return $res[1];
	}
	else{
		$config = preg_match("/".preg_quote($ini)."=\"(.*)\";/", $str, $res);
		if($res[1]==null){	
			$config = preg_match("/".preg_quote($ini)."=&#39;(.*)&#39;;/", $str, $res);
		}
		return $res[1];
	}
}

function update_config($file, $ini, $value,$type="string"){
	if(!file_exists($file)) return false;
	$str = file_get_contents($file);
	$str2="";
	if($type=="int"){	
		$str2 = preg_replace("/".preg_quote($ini)."=(.*);/", $ini."=".$value.";",$str);
	}
	else{
		$str2 = preg_replace("/".preg_quote($ini)."=(.*);/",$ini."=\"".$value."\";",$str);
	}
	file_put_contents($file, $str2);
}

                   

                   

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn