使用 PHP 在 java 文件中添加换行符

Add a line break in a java file using PHP

我正在尝试使用以下代码更新名为 Activity.java 的 Java 文件中的第 65 行:

$arr = file(getcwd() . "/details/Activity.java");
$arr[64] = 'public static String name = "hello world";';
file_put_contents($getcwd() . "/details/Activity.java", implode($arr));

此文件应该将 Activity.java 中的第 65 行替换为 public static String name = "hello world";

实际情况是,它替换了现有文本,但删除了换行符,因此显示如下:

public static String name = "hello world"; public static String address = "address";

因此,正如您所理解的,它删除了第 65 行和第 66 行之间的换行符,因此第 65 行和第 66 行将在同一行,然后继续到第 65 行下方的第 67 行。

我试着这样写:

$arr[64] = 'public static String name = "hello world"; \n';

但是 \n 只是写在第 65 行和第 66 行文本之间的同一行上,如下所示:

public static String name = "hello world"; \n public static String address = "address";

如何解决此问题以在第 65 行和第 66 行之间输入换行符?

尝试在新字符串的末尾添加换行符。

$arr = file(getcwd() . "/details/Activity.java");
$arr[64] = 'public static String name = "hello world";'. "\n";
file_put_contents($getcwd() . "/details/Activity.java", implode($arr));