PHP数组中的Git Diff输出
在PHP中将gitt diff输出存储为数组时出现问题PHP数组中的Git Diff输出,php,bash,Php,Bash,在PHP中将gitt diff输出存储为数组时出现问题 $modifiedFiles = `git diff --cached --name-only --diff-filter=ACMR HEAD -- '*.php'`; var_dump($modifiedFiles); 输出: """ app/Http/Controllers/HomeController.php\n app/Http/Controllers/LawyerController.php\n ""
$modifiedFiles = `git diff --cached --name-only --diff-filter=ACMR HEAD -- '*.php'`;
var_dump($modifiedFiles);
输出:
"""
app/Http/Controllers/HomeController.php\n
app/Http/Controllers/LawyerController.php\n
"""
然后我试着:
$modifiedFiles = explode('\n', $modifiedFiles);
var_dump();
输出:
array(1) {
[0]=>
string(82) "app/Http/Controllers/SomeFile.php
app/Http/Controllers/OtherFile.php
"
}
我只希望输出是一个PHP文件数组。有什么建议吗?这里有几个问题:
explode('/n', $modifiedFiles);
这条线需要更换
explode("\n", $modifiedFiles);
只有双引号字符串才能解释换行符和类似的转义序列等。请参阅
还有一个正斜杠而不是反斜杠。第二个参数是我粘贴错误的arraySorry。我确实意识到了这一点,并做了“\n”,但这也不起作用。你是说你尝试了
“\n”
还是“\n”
?双引号是最重要的部分。就是这样!是单引号。呸,这是一个多么愚蠢的错误。谢谢你,伙计!