PHP 修改文本文件内容

本地有一个这种格式的文件[Settings];文件版本,动态替换配置时需要变更FileVersion=15;产品类型ProductType=5;产品IDProductID... 本地有一个这种格式的文件
[Settings]
;文件版本,动态替换配置时需要变更
FileVersion=15
;产品类型
ProductType=5
;产品ID
ProductID=10001
;产品名称
ProductName=1倍场---zp
;游戏类型

请问用PHP 如何修改某项的值,并保存整个文件 比如 我要修改 ProductType的值为10

修改完成后
文件内容为
[Settings]
;文件版本,动态替换配置时需要变更
FileVersion=15
;产品类型
ProductType=10
;产品ID
ProductID=10001
;产品名称
ProductName=1倍场---zp
;游戏类型
展开
 我来答
辞友缘心
2014-11-11 · TA获得超过684个赞
知道小有建树答主
回答量:432
采纳率:0%
帮助的人:359万
展开全部
<?php
//从文件中读取
$path = "1.txt";
$fp = file($path);
$arr = array();
foreach($fp as &$line){
$data = explode("=",$line);
if(count($data)>1)
{
$arr[]=array($data[0]=>$data[1]);
}else{
$arr[] = $line;
}
}


//假设要修改ProductType为10
setValue("ProductType","10",$arr);

//var_dump($arr);
//重新保存到文件
$fp = fopen("2.txt","w");
foreach($arr as $row){
if(is_array($row)){
foreach($row as $key=>$r){
fwrite($fp,$key."=".$r);
}
}else{
fwrite($fp,$row);
}
}
fclose($fp);


function setValue($name,$value,&$arr){
foreach($arr as $key=>$row){
if(is_array($row) && isset($row[$name])){
$arr[$key][$name] = $value;
//修改后记得加上换行
$arr[$key][$name] = $arr[$key][$name]."\n";
}
}

?>

我测试了可以使用,如果可以请将两个问题都采纳下,谢谢。

博思aippt
2024-07-20 广告
作为深圳市博思云创科技有限公司的工作人员,对于Word文档生成PPT的操作,我们有以下建议:1. 使用另存为功能:在Word中编辑完文档后,点击文件->另存为,选择PowerPoint演示文稿(*.pptx)格式,即可将文档内容转换为PPT... 点击进入详情页
本回答由博思aippt提供
百度网友d1a1135
2014-11-11 · TA获得超过143个赞
知道小有建树答主
回答量:315
采纳率:50%
帮助的人:184万
展开全部
给个思路你:
读取文件。
每次读取一行,
保存到一个数组,
最后循环数组

用str_replace();进行搜索替换
再次覆盖写入文件。

或者文件不大的话:可以直接获取整个内容,再替换。
追问
额..初学PHP ...用了等号分割的方法..修改完之后 .然后不知道怎么整个写往回了.
追答
file_put_contents();
fwrite();
上面2个函数都可以。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式