【问题标题】:Edit array in PHP file在 PHP 文件中编辑数组
【发布时间】:2017-08-25 11:29:43
【问题描述】:

我有一个小问题。 (在 PHP 中)是否有任何方法可以更新 php 文件中的数组? 例如我有这个代码的文件

$array = array(
    'test' => 'aaaa'
    'test2' => 'aaaa'
    'test3' => 'aaaa'
     etc etc, more data
);

我使用 $array 通过 include file.php 加载此数组,我做了一些事情并选择了我需要删除的几个键(它们未使用,...)。 有什么办法可以做得很好吗? 我的意思是我可以删除文件并 fwrite 第一行,然后对每个键使用 foreach 并在最后 write );归档。但有一个问题。该文件不只包含这个数组(有多个变量、文本、...)。

那么有人可以帮助我吗? 请不要问我为什么会这样,我也不高兴,我只需要解决这个问题。

总结:我有我想在数组中删除的数组键 + 我在 .php 文件中有我需要修改好的数组

【问题讨论】:

  • 也许php.net/manual/en/function.var-export.php 就是您要找的。​​span>
  • 如果你的意思是解析和编辑任意结构的 PHP 脚本的源代码,除非你经历了一个成熟的 PHP 代码解析器的麻烦,否则很难找到一个健壮的解决方案.是否可以更改代码并从单独的数据文件中读取数组值?
  • 不,不可能。我只需要更新这个文件。我能做的就这些了。
  • 我想不可能在多个文件中分离“file.php”。好吧,尽管有数组,但内容是否经常变化?该文件是否始终包含相同的变量?可以发一下file.php的内容吗?
  • 如果您设置了一个干净的数组,在您处理它并将数据更改为这个新数组后,您可以将其作为序列化数据保存回文件中。您不会卡在使用原始数组,清理并操作到一个新数组,然后将该新数组保存回旧数组的数据格式相同的位置。

标签: php arrays foreach delete-row


【解决方案1】:

如果你真的想将 data 存储为 php 数组,而不是一些数据库,那么你应该使用:serialize() 和 unserialize()

那么您的工作流程将如下所示:

  1. 将您的数据作为序列化数组保存到 .php 文件中。
  2. 从那里加载并反序列化。
  3. 继续努力。
  4. 如果您对数组的处理结束,请再次序列化并保存到文件中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-23
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多