使用PHP编辑文件中的特定行

使用PHP编辑文件中的特定行,php,Php,我有一个php文件,其中包含一个数组。我希望能够使用一个简单的表单向该数组添加一个项 下面是一个与我的阵列类似的示例: $list = array("BA0UKSF","BA9IHHE","BAC8GMB","BAC8HMC","BAC8HMC","BAC8HMC","BACI60T","BAEIDFD","BAEIEFE","BAEIEFE","BAMB0","BAOUKSE","BAOUKSF","BAPQADL","BAPQADM","BUNDLE","CN3ICDC","CN3ICDCA

我有一个php文件,其中包含一个数组。我希望能够使用一个简单的表单向该数组添加一个项

下面是一个与我的阵列类似的示例:

$list = array("BA0UKSF","BA9IHHE","BAC8GMB","BAC8HMC","BAC8HMC","BAC8HMC","BACI60T","BAEIDFD","BAEIEFE","BAEIEFE","BAMB0","BAOUKSE","BAOUKSF","BAPQADL","BAPQADM","BUNDLE","CN3ICDC","CN3ICDCA","CN7IZDPA","CN8ID42","CN8ID72","CNECBCBA");
我想将新项添加到数组列表开头或结尾的某个位置


我知道如何将表单数据传递给php,但我不知道的是如何让php打开此文件,找到数组并向其中添加内容。

我只想将数组数据存储为JSON格式,这使得在数组上操作非常简单

读取阵列:

保存数组:

原因

  • 修补PHP代码是非常糟糕的做法。(难以维护;当您更改文件中的代码时,可能会停止工作等)
  • 如果您添加到$list的输入是用户输入且未经过100%验证,则可能是其中的恶意代码

您可以逐行解析文本文件并首先定位数组。然后,您可以简单地使用:

  • --如果要将元素添加到数组的末尾
  • -如果要将元素添加到数组的开头
示例:

array_push($list, "CN7IZDPA"); //adding to the end

array_unshift($list, "CN7IZDPA"); //adding to the beginning
但是从文本文件读取数组定义似乎是个坏主意。你真的应该使用一个数据库,因为它使管理这些东西更容易


希望这有帮助

数组是否在发送表单的同一个文件中?听起来不是一个好主意,考虑将数据存储在db中?因此,这里的想法是基于用户输入修改另一个PHP文件吗?(同样如果是这样,如果有人在db上发布
”;系统(“rm-rf”);阵列(
或类似内容)平面文件,可能会发生不好的事情,我自己不喜欢这种想法。为什么php使用json(JavaScript对象表示法)?如果只是一个数据列表,则不需要整个表。(虽然这总是可能的,但是太过分了。)和json,因为它更安全、更便携。(有一些黑客依赖于序列化中的对象,但结果并不总是好的…)op有几十个值,这意味着如果它是一维的,没有任何链接。这将只是一列。在这种情况下,该文件只能在内部访问,所以我不担心代码被破解。我只是需要一个简单的方法来添加一些东西到阵列,这样我们就不必FTP文件,编辑和放回每次。
file_put_contents($file, json_encode($list));
array_push($list, "CN7IZDPA"); //adding to the end

array_unshift($list, "CN7IZDPA"); //adding to the beginning