所以我知道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;
答案 0 :(得分:4)
这很简单:
$plugins = file("plugins.txt");
$plugins = str_replace(array("\r\n", "\r", "\n"), '', $plugins);
$output = json_encode($plugins);
print $output;