用php编写时从js文件中删除换行符

时间:2019-02-19 19:28:21

标签: javascript php variables trim

所以我的JavaScript文件为空白。我使用php写入。 我从数据文件中提取这些行,并在文本中使用它们。

这是PHP:

<?php
$myFile = "datafile.txt";
$lines = file($myFile);
$line0 = $lines[0]; //Linija 1
$line1 = $lines[1]; //Linija 2
$line2 = $lines[2]; //Linija 3
$line3 = $lines[3]; //Linija 4
$line4 = $lines[4]; //Linija 5
$line5 = $lines[5]; //Linija 6
$line6 = $lines[6]; //Linija 7

$empty = "\n\n";
$hex = 'var '.$line4.' = "<button class="provjeri" onclick="'.$line1.'()">PROVJERI</button> <button class="rijesi" onclick="'.$line2.'()">RIJEŠI</button>";';


$fp = fopen("js/rijesenja.js", "a");
fwrite($fp, $hex);
fwrite($fp, $empty);
fclose($fp);

这是datafile.txt:

1
geo1
a1
isprava1
gumbi1
alfa1
ponovi1

我需要输出看起来像这样:

var gumbi1= "<button class="provjeri" onclick="geo1()">PROVJERI</button> 
<button class="rijesi" onclick="a1()">RIJEŠI</button>";

实际上,所有内容都应该合而为一。

我得到的输出是:

var gumbi1
 = "<button class="provjeri" onclick="geo1
()">PROVJERI</button> <button class="rijesi" onclick="a1
()">RIJEŠI</button>";

似乎每个变量都会破坏行号。 我尝试过:

var_dump(preg_match('/^\n|\n$/', $variable));

我也尝试过:

preg_replace( "/\r|\n/", "", $yourString );

我也尝试了trim()命令,但没有成功。 关于下一步应该尝试的任何建议?

2 个答案:

答案 0 :(得分:1)

尝试一下-PHP fwrite new line

或在fwrite末尾为所有行\ r \ n添加

fwrite($fp, $line . "\r\n");

答案 1 :(得分:0)

因为我正在使用File()将文件获取到数组中,所以它会自动将换行符(也称为\ n)放在变量之后,并在将其写入新文件时跳到下一行。解决此问题的方法:

$lines = file($myFile, FILE_IGNORE_NEW_LINES);

FILE_IGNORE_NEW_LINES属性在每个数组元素的末尾省略换行符。 因此,您不必让代码进入下一行,而是将它们全部留在同一行。