PHP文件输出,feed中的随机空格

以下函数应该读取文件,递增,然后输出到文件以下文件:

function updateDaysAway($tenantName, $datefrom, $dateto){
    $names = array();
    $days = array();
    $file = fopen("data/daysaway.txt", 'a+');

    while (!feof($file)) {
        $data = fgets($file);
        if(!$data == '') {
            $pieces = explode(" ", $data);
            $names[] = $pieces[0];
            $days[] = $pieces[1];
        }
    }

    fclose($file);

    for($x = 0; $x < count($names); $x++) {
        if(strtolower($names[$x]) == strtolower($tenantName)){
            $datefromVAR = new DateTime($datefrom);
            $datetoVAR = new DateTime($dateto);
            $file = fopen("data/range.txt", 'a+');
            $days[$x] +=  $datetoVAR->diff($datefromVAR)->format('%a')+1;
        }
    }

    $file = fopen("data/daysaway.txt", 'w');

    for($x = 0; $x < count($names); $x++) {
        $entry = $names[$x]." ".$days[$x].PHP_EOL;
        fwrite($file, $entry);
    }

    fclose($file);
}

原始文件

"
name 185
name 0
"

文件后

"
name 185
name 0




 // Random white space I don't want



"

相反,它逐步输出(似乎在每次写入后增加),一个空白空间和“”在行尾随机随机输出.你有关于如何解决的任何信息吗?

最佳答案 发现了这个问题

    $pieces = explode(" ", $data);
    $names[] = $pieces[0];
    $days[] = $pieces[1];

当将文件读入数组时,days参数(爆炸的一面)包括不可见的换行符.上帝,我讨厌PHP !!

点赞