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


Posted in PHP onJuly 07, 2012
<?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 相关文章推荐
不用GD库生成当前时间的PNG格式图象的程序
Oct 09 PHP
实用函数10
Nov 08 PHP
PHP实现多进程并行操作的详解(可做守护进程)
Jun 18 PHP
PHP程序员常见的40个陋习,你中了几个?
Nov 20 PHP
php 如何获取文件的后缀名
Jun 05 PHP
关于php几种字符串连接的效率比较(详解)
Feb 22 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
Jul 10 PHP
PHP编程实现计算抽奖概率算法完整实例
Aug 09 PHP
PHP实现的折半查询算法示例
Oct 09 PHP
实例讲解PHP页面静态化
Feb 05 PHP
PHP中使用mpdf 导出PDF文件的实现方法
Oct 22 PHP
TP5.0框架实现无限极回复功能的方法分析
May 04 PHP
php中CI操作多个数据库的代码
Jul 05 #PHP
PHP5权威编程阅读学习笔记 附电子书下载
Jul 05 #PHP
PHP中使用unset销毁变量并内存释放问题
Jul 05 #PHP
php Ubb代码编辑器函数代码
Jul 05 #PHP
PHP取整数函数常用的四种方法小结
Jul 05 #PHP
PHP函数学习之PHP函数点评
Jul 05 #PHP
php中根据变量的类型 选择echo或dump
Jul 05 #PHP
You might like
CI框架开发新浪微博登录接口源码完整版
2014/05/28 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
2018/10/16 PHP
js对象内部访问this修饰的成员函数示例
2014/04/27 Javascript
jquery提示效果实例分析
2014/11/25 Javascript
Javascript控制div属性动态变化实例分析
2015/10/08 Javascript
jQuery实现图像旋转动画效果
2016/05/29 Javascript
JS实现图片的不间断连续滚动的简单实例
2016/06/03 Javascript
bootstrap模态框垂直居中效果
2016/12/03 Javascript
教你快速搭建Node.Js服务器的方法教程
2017/03/30 Javascript
js实现扫雷小程序的示例代码
2017/09/27 Javascript
JS实现延迟隐藏功能的方法(类似QQ头像鼠标放上展示信息)
2017/12/28 Javascript
vue组件实践之可搜索下拉框功能
2018/11/25 Javascript
详解nodejs解压版安装和配置(带有搭建前端项目脚手架)
2018/12/06 NodeJs
使用Node.js写一个代码生成器的方法步骤
2019/05/10 Javascript
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
使用Python3中的gettext模块翻译Python源码以支持多语言
2015/03/31 Python
python将字符串转换成数组的方法
2015/04/29 Python
Python随手笔记之标准类型内建函数
2015/12/02 Python
利用python实现在微信群刷屏的方法
2019/02/21 Python
详解pandas如何去掉、过滤数据集中的某些值或者某些行?
2019/05/15 Python
pytorch多进程加速及代码优化方法
2019/08/19 Python
Python语言异常处理测试过程解析
2020/01/08 Python
SpringBoot实现登录注册常见问题解决方案
2020/03/04 Python
Python字符串hashlib加密模块使用案例
2020/03/10 Python
详解HTML5 window.postMessage与跨域
2017/05/11 HTML / CSS
正宗的日本零食和糖果订阅盒:Bokksu
2019/11/21 全球购物
网络工程系信息安全技术专业大学生求职信
2013/10/22 职场文书
计算机专业学生求职信分享
2013/12/15 职场文书
植树造林的宣传标语
2014/06/23 职场文书
项目合作协议书
2014/09/23 职场文书
2015毕业生简历自我评价
2015/03/02 职场文书
2015年党风廉政建设目标责任书
2015/05/08 职场文书
2015年数学教研组工作总结
2015/05/23 职场文书
幼儿园大班教育随笔
2015/08/14 职场文书
Python 实现Mac 屏幕截图详解
2021/10/05 Python
Spring Bean是如何初始化的详解
2022/03/22 Java/Android