1

私の単純なphpコード

<?

error_reporting(E_ALL);

set_time_limit(0);
ini_set('show_errors', 1);
$file = "ftpfile.txt";
$handle = fopen($file, "r");
if(!filesize($file)>0) {
        echo "File is empty!";
    }
    else {
    while (($ftpservers = fgets($handle, 4096)) !== false) {

        echo $ftpservers. "\n\r";

    }
    if (!feof($handle)) {
        echo "Error: unexpected fgets() fail\n";
    }
    fclose($handle);






        }
?>

私のテキストファイル

ftp.server:username:password    
ftp.server:username:password    
ftp.server:username:password    
ect..

このコードを実行すると、これが返されます

ftp.server:username:passwordftp.server:username:passwordftp.server:username:password
ect..

fgetsテキストファイルをスペード 3 で返すのはなぜですか?

4

2 に答える 2

1

fgets()ドキュメントページには、行末の問題に関するメモがあります。

Macintosh コンピューター上または Macintosh コンピューターで作成されたファイルを読み取るときに、PHP が行末を正しく認識しない場合は、 auto_detect_line_endingsランタイム構成オプションを有効にすると問題が解決することがあります。

于 2012-10-28T00:46:11.567 に答える
0

推測ですが、ソースファイルの ftp.server:username:password と次のエントリの間にスペースが含まれていないことを確認していますか?

于 2012-11-25T07:36:16.297 に答える