使用 php 编写 js 文件时删除换行符
Remove line breaks from a js file when writing it with php
所以我的 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()
命令但没有成功。
关于我接下来应该尝试什么有什么建议吗?
试试这个 - PHP fwrite new line
或在 fwrite
末尾添加所有行 \r\n
fwrite($fp, $line . "\r\n");
因为我使用 File() 获取数组中的文件,它会自动将换行符(又名 \n)放在变量后面,当它写入新文件时会跳到下一行。解决此问题的方法:
$lines = file($myFile, FILE_IGNORE_NEW_LINES);
FILE_IGNORE_NEW_LINES 属性省略了每个数组元素末尾的换行符。
因此,您不会让代码进入下一行,而是将它们全部留在同一行。
所以我的 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()
命令但没有成功。
关于我接下来应该尝试什么有什么建议吗?
试试这个 - PHP fwrite new line
或在 fwrite
末尾添加所有行 \r\nfwrite($fp, $line . "\r\n");
因为我使用 File() 获取数组中的文件,它会自动将换行符(又名 \n)放在变量后面,当它写入新文件时会跳到下一行。解决此问题的方法:
$lines = file($myFile, FILE_IGNORE_NEW_LINES);
FILE_IGNORE_NEW_LINES 属性省略了每个数组元素末尾的换行符。 因此,您不会让代码进入下一行,而是将它们全部留在同一行。