Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z fopen
Forum PHP.pl > Forum > Przedszkole
Tsiru
Cześć !
Mam problem, który polega na tym, że kiedy wpisuje
  1. <pre>
  2. <?php
  3. $plik = fgets(fopen(&#092;"plik.txt\",\"r\"),1024);
  4. echo&#092;"$plik\";
  5. ?>
  6. </pre>

to wypluwa to ?
Kod
linia 1

plik plik.txt prezentuje się tak:
Kod
linia 1
linia 2
linia 3
linia 4

Wiecie co zrobić, żeby wyświetlało cały plik ?
(mam php w wersji powyżej 4)
crash
Sorry, ale nie rozumiem dlaczego dziwisz się, że funkcja pobierająca pojedyncza linię z pliku zwraca Ci tylko 1 linię? biggrin.gif Może zerknij do manuala... file_get_contents" title="Zobacz w manualu PHP" target="_manual, implode" title="Zobacz w manualu PHP" target="_manual('', file" title="Zobacz w manualu PHP" target="_manual()) itp..
Tsiru
Mnie uczyli że fgets() pobiera linię z pliku o podanej długości, a entera traktowałem tak samo jak znak (i pewnie tu jest muj błąd).
A jeżeli chodzi o file_get_contents() to nie w moim php, ale dzięki za pomysł z file
_Mateo
Z pobieraniem funkcji fgets() tylko jednej linii z pliku to fakt, a co do file - pamiętaj, że otworzy plik jako tablicę
Michał2000
Lub...

  1. <?php
  2. $plik = fopen(&#092;"plikt.rxt\", 'r');
  3.  
  4.  
  5. while (!feof($plik))
  6. {
  7. $wys = fgets($wp, 999);
  8. echo $wys.'<br>';
  9. }
  10.  
  11. fclose($wp);
  12. ?>
mls
Cytat(Tsiru @ 2005-04-09 22:22:58)
Mnie uczyli że fgets() pobiera linię z pliku o podanej długości, a entera traktowałem tak samo jak znak (i pewnie tu jest muj błąd).
A jeżeli chodzi o file_get_contents() to nie w moim php, ale dzięki za pomysł z file

fgets" title="Zobacz w manualu PHP" target="_manual pobiera linię o podanej długości z pliku, o ile wcześniej nie trafi na znak nowej linii...
Co innego fread" title="Zobacz w manualu PHP" target="_manual, który pobierze tekst o podanej długości bez zwracania uwagi na jakiekolwiek inne znaki winksmiley.jpg

file_get_contents($plik) najprościej przedstawia się tak, jak już napisał crashu - implode('', file($plik))...
Tsiru
dzięki, już wiem wszstko tongue.gif
Seth
Mozna tez tak:
  1. <?php
  2. $fileName = 'cos.txt';
  3. $content = fread(fopen($fileName, 'r'), filesize($fileName));
  4. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.