2010-08-18 15 views
6

Görünüşe göre, her şey döndükten sonra bir boşluk bırakıyormuş gibi görünüyor.Fgets sonucundan sonra otomatik alan?

<?php 
Echo "Opening " . $_SERVER{'DOCUMENT_ROOT'} . "/file.txt" . "...<br>"; 
$FileHandle = @Fopen($_SERVER{'DOCUMENT_ROOT'} . "/file.txt", "r"); 
If ($FileHandle){ 
    Echo "File opened:<br><br>"; 
    While (!Feof($FileHandle)){ 
     $Line = Fgets($FileHandle); 
     Echo $Line . "word<br>"; //Should be LINECONTENTSword, no space. 
    } 
    Fclose($FileHandle); 
} 
?> 

Neden hat içeriği ve "kelime" arasında bir boşluk vardır

Opening /var/www/vhosts/cqe.me/httpdocs/file.txt... 
File opened: 

First line word 
Second line word 
3rd line word 
Another line of text word 
Blablablaword 

döndürür: İşte bazı örnek kod? Ve neden bu alanın sonunda dosya yok (Blablablaword)?

Lütfen bu alandan nasıl kurtulacağımı söyler misiniz? Çok teşekkürler :-)!

+0

kullanın sondaki yeni satır kaldırmak için detaylandırma. –

+0

Yeşil kontrolün yeterli olacağını düşündüm? Affedersem özür dilerim. – Chris

cevap

12

fgets() bir çizgi ve satır karakteriyle (\n) döndürür kullanabilirsiniz. Bu, diğer tüm beyaz boşluklar gibi HTML'de bir alan olarak oluşturulacaktı. sizin için çalışıyorsa artık daha gerekirse kendim gibi başkaları bilecek ki

(i iman, bir onay kutusu) bir çözümü kabul adettendir

$line = rtrim($line, "\r\n"); 
// Trims \r, \n and \r\n, which are all considered 
// newlines on different platforms 
+0

Açıklama için teşekkürler, çok takdir. – Chris

7

Ayrıca, fgets satır karakterinin (\ n) sonunu döndürdüğüne inanıyorum ve bu, html'de boşluk olarak görüntülenir. Eğer hattan tüm sondaki boşluk kaldırmak istiyorsanız

, sen rtrim

+0

Hızlı Cevabınız için teşekkürler :-) – Chris

İlgili konular