You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Linux命令行向PHP文件的现有数组中追加新数组

操作方法

核心逻辑是匹配$CONFIG数组的闭合行);,在该行之前插入你需要追加的数组内容即可,操作前建议先备份原文件避免出错:

cp config.php config.php.bak

方法1:直接用sed单行命令插入(适合短内容场景)

直接执行以下命令即可完成修改:

sed -i '/^);$/i \  array (\n    '\''class'\'' => '\''\\OC\\Files\\ObjectStore\\S3'\'','\n    '\''arguments'\'' =>\n    array (\n      '\''val1'\'' => '\''val1x'\'','\n      '\''val2'\'' => '\''val1x'\'','\n    ),\n  ),' config.php

参数说明:

  • -i 表示直接修改原文件,首次操作可先去掉-i参数预览输出结果,确认格式正确后再加-i执行修改
  • /^);$/ 匹配行首为);的行,也就是$CONFIG数组的闭合行,如果你的闭合行前有空格,可将匹配规则改为/^\s*);$/适配前置缩进
  • i 是插入命令,会将后续内容插入到匹配行之前
  • 单引号用'\''做Shell转义,\n代表换行,缩进对齐和原有数组保持一致

方法2:将待追加内容存为临时文件插入(适合长内容,不易出错)

  1. 先把你要追加的数组内容存为临时文件s3_config.tmp,保持缩进和原数组一致:
array (
    'class' => '\\OC\\Files\\ObjectStore\\S3',
    'arguments' =>
    array (
      'val1' => 'val1x',
      'val2' => 'val1x',
    ),
  ),
  1. 执行命令插入内容:
# 先插入内容到闭合行之前
sed -i '/^);$/e "cat s3_config.tmp"' config.php
  1. 确认修改无误后删除临时文件即可。

额外补充

  • 如果你需要补全文件开头的<?php标记,可执行命令:sed -i '1s/^/<?php\n/' config.php
  • 修改完成后可执行php -l config.php检查PHP语法是否正确,避免语法错误导致业务异常

内容的提问来源于stack exchange,提问作者Josh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 14:36:04