所以我知道 file()
将每个新行返回到一个数组中。
$plugins = file("plugins.txt");
foreach($plugins as $plugin) {
echo $plugin;
}
哪个返回
item1 item2 item3
在一行中。虽然,我知道 PHP 认为它是一个数组,但 JS 不会,如果我将上面的 PHP 脚本转换成一个函数然后执行:
var pluginsList = <?php echo filetoArray(); ?>;
在控制台中返回
var pluginsList = item1 item2 item3
虽然我希望:
var pluginsList = [item1,item2,item3];
我如何确保它返回一个数组以便 JS 可以读取?
编辑: 所以多亏了答案,我终于得到了一个数组。但它像这样返回:
["item1\r\n","item2\r\n","item3\r\n","item4"]
不过,我希望删除\r\n 。到目前为止我所拥有的:str_replace 没有做任何事情,它是一样的。
$plugins = file("plugins.txt");
$plugins = json_encode($plugins);
$plugins = str_replace("\n\r", "", $plugins);
echo $plugins;
最佳答案
就这么简单:
$plugins = file("plugins.txt");
$plugins = str_replace(array("\r\n", "\r", "\n"), '', $plugins);
$output = json_encode($plugins);
print $output;
关于php - 将文件内容转换为 JavaScript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13671290/