Php 在记事本中间添加内容(现有)

Php 在记事本中间添加内容(现有),php,insert,Php,Insert,我有一个包含以下内容的.txt文件 [{"key": "HR", "value": "test@gmail.com"}, {"key": "Team Leader", "value": "test1@gmail.com"}, {"key": "PM", "value": "test3@gmail.com"}, {"key": "CEO", "value": "test4@gmail.com"}] 现在,如果我想添加另一个值,比如 {“key”:“new_emailid”,“value”:tes

我有一个包含以下内容的.txt文件

[{"key": "HR", "value": "test@gmail.com"}, {"key": "Team Leader", "value": "test1@gmail.com"}, {"key": "PM", "value": "test3@gmail.com"}, {"key": "CEO", "value": "test4@gmail.com"}]
现在,如果我想添加另一个值,比如 {“key”:“new_emailid”,“value”:test5@gmail.com“}

输出应该是这样的

[{"key": "HR", "value": "test@gmail.com"}, {"key": "Team Leader", "value": "test1@gmail.com"}, {"key": "PM", "value": "test3@gmail.com"}, {"key": "CEO", "value": "test4@gmail.com"}, {"key": "new_emailid", "value":"test5@gmail.com"}]
换句话说,如何在现有.txt文件的方括号内添加内容。是否可以在括号之间插入内容。请帮帮我 谢谢-
Haan

既然您正在处理JSON,最安全的方法就是读取txt文件并将其加载为JSON,添加一个新项,然后将其保存回去。大概是这样的:

$data = File_Get_Contents ( 'data.txt' );
$data = JSon_Decode ( $data, true );
$data[] = Array ( 'key' => 'new_emailid', 'value' => 'test5@gmail.com' );
$data = JSon_Encode ( $data );
File_Put_Contents ( 'data.txt', $data );

你真的这样利用你的功能?这就是为什么PHP应该对函数名强制区分大小写!:PBTW,我很确定
json\u decode()
返回的是一个对象,而不是数组。您可以将其第二个参数设置为
TRUE
,以返回关联数组。是的,我确实这样做了。我猜是.NET时代的一个老习惯:)你对jsone\U解码返回对象的看法是正确的,我会更新我的答案,谢谢!谢谢你,伙计。不要说话。工作得很好。你太棒了。。谢谢fnd@hjaffer2001如果解决了你的问题,请接受我的答案(点击绿色复选标记):)没问题!