我使用php
在SQL中导入一些文件LOAD DATA LOCAL INFILE
对于大多数文件它工作正常,但2-3文件
LINES TERMINATED BY '\r\n'
不行......我必须使用:
LINES TERMINATED BY '\n'
而不是......所以问题是......如何“读取”文件并检测行结束字符并将其发送到LOAD DATA LOCAL INFILE导入...
我喜欢“看”是否是/ r或/ r / n 我怎么在PHP中做到这一点?
所以最后,我有一些文件,其中的行以/ r结尾,有些以/ r / n结尾,我需要读取它,并将其作为var发送到LOAD
答案 0 :(得分:0)
这是我的解决方案....不漂亮,但效率很高
//======================================================================
function EOL_reader($filename) {
$return = "";
$loaded_thing = file($filename);
$first_line = $loaded_thing[0];
$lenght = strlen($first_line);
$the_last = $loaded_thing[0][$lenght-1];
$one_before_last = $loaded_thing[0][$lenght-2];
if (ord($the_last) == 10) { $return = "\n";}
if (ord($one_before_last) == 13) { $return = "\r\n"; }
return $return;
}