下面的代码输出格式正确的文本文件。但它还在文本文件的末尾添加了一个额外的字符 - 我假设一个\ r或\ n字符。我试过sed'$ d'但这不起作用。当我在编辑器中打开输出文件(load_data_infile.txt)时,我将光标定位在文件的最后写入行之后,它表示我在“15 of 14”行,这是奇怪的。如何在14行文件中包含15行?
我的问题是这些:1)是什么导致了“15 of 14”和2)如何防止它被写入或删除它?
谢谢!
<?php
$file_write_output = fopen("load_data_infile.txt", "w") or die ("can't open load_data_infile.txt for writing");
$file_read_input = fopen("http://file.txt", "r") or die ("can't open file");
//perform the loop through the file - read the input file line by line with fgets function
while (!feof($file_read_input) ) {
$input = fgets($file_read_input);
echo "$input";
fwrite($file_write_output,$input);
}
fclose($file_write_output);
fclose($file_read_input);
?>
<?php
//strip out the header of load_data_infile.txt file
exec("sed -i '1d' load_data_infile.txt");
?>
答案 0 :(得分:0)
试试这个:
$content = file_get_contents('http://file.txt');
if ($file !== false) {
return $file;
}
if ( file_put_contents('load_data_infile.txt', $content, LOCK_EX) ) {
// Success
}
答案 1 :(得分:0)
以下代码正常运作!
<?php
$raw_data = file_get_contents('http://file.txt');
$trimmed_raw_data=trim($raw_data);
echo $trimmed_raw_data;
if (file_put_contents('load_data_infile.txt', $trimmed_raw_data, LOCK_EX) )
?>