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

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
$name="admin";//kkkk
$bb='234';
$db=4561321;
$kkk="admin";
?>

函数定义:
配置文件数据值获取:function getconfig($file, $ini, $type="string")
配置文件数据项更新:function updateconfig($file, $ini, $value,$type="string")
调用方式:
复制代码 代码如下:

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

复制代码 代码如下:

<?php

//配置文件数据值获取。
//默认没有第三个参数时,按照字符串读取提取''中或""中的内容
//如果有第三个参数时为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 . "='(.*)';/", $str, $res);
}
Return $res[1];
}
}

//配置文件数据项更新
//默认没有第四个参数时,按照字符串读取提取''中或""中的内容
//如果有第四个参数时为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");

?>

复制代码 代码如下:

//完善改进版


/**
* 配置文件操作(查询了与修改)
* 默认没有第三个参数时,按照字符串读取提取''中或""中的内容
* 如果有第三个参数时为int时按照数字int处理。
*调用demo
$name="admin";//kkkk
$bb='234';

$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)."='(.*)';/", $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);
}

相关文章

在PHP中养成7个面向对象的好习惯

如果您尚未打算用 OO 原则创建应用程序,则使用 PHP 的面向对象(OO)的语言特性,这 7 个习惯将帮助您开始在过程编程与 OO 编程之间进行转换。 在 PHP 编程早期,PHP 代...

php插入中文到sqlserver 2008里出现乱码的解决办法分享

今天使用php操作数据库时发现插入SQL Server 2008数据库里的中文字段出现乱码,下面是我一开始时的一些情况: 开发环境是php5.3.3+Apache2.2.17+SQL S...

学习php设计模式 php实现状态模式

学习php设计模式 php实现状态模式

一、意图 允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类 状态模式变化的位置在于对象的状态 二、状态模式结构图   三、状态模式中主要角色 抽象状态...

PHP防止注入攻击实例分析

本文以实例形式详细分析了PHP防止注入攻击的方法。分享给大家供大家参考。具体分析如下: PHP addslashes() 函数--单撇号加斜线转义 PHP String 函数 定义和用法...

PHP 编写的 25个游戏脚本

无论是一个人玩简单的使用纸和笔的游戏,还是同一群人玩复杂的桌面角色扮演游戏,或者任意类型的联机游戏,本系列都提供了适合您的内容。“用 PHP 可以编写的 30 个游戏脚本” 系列中的每篇...