Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] generowanie nazw zmiennych
Forum PHP.pl > Forum > Przedszkole
simperium
powiedzmy, że mam plik o nazwie test.txt, a w nim treść:
"linia1"
"linia2"

i wczytuję ten plik za pomocą takiego skryptu

  1. <?php
  2. $b=0;
  3. $file1=fopen("test.txt", "r"); 
  4. while($b<500)
  5. {
  6. $dan=fgets($file1, 10000);
  7. echo"$dan<br>";
  8. $b++;
  9. if($dan=="")
  10. break;
  11. }
  12. flock($file1, 3);
  13. fclose($file1);
  14. ?>

a więc biorę pod uwagę to, że raz plik test.txt może mieć 3 linie, a raz wiele więcej...

i pytanko:
jak zrobić, by każda kolejna linia była nazywana jako inna zmienna? Bo teraz wszystkie są jako $dan, a gdyby każda linia nazywała się np. $dan1, $dan2... etc...
jak to można zrobić, i czy można?

Dziękuję za pomoc smile.gif
aiv
  1. <?php
  2. $file = file('test.txt');
  3. print_r($file);
  4. ?>
simperium
ale jak wtedy będą się nazywały zmienne?
aiv
$file[X]
gdzie X to numer linii pobranej z pliku (liczone od 0 a nie od 1)
simperium
hmm... a jeśli plik tekstowy będzie miał coś takiego:

"Apole1","Apole2","Apole3"
"Bpole1","Bpole2","Cpole3"

czyli, że w "normalnej" sytuacji wczytywałbym je za pomocą fgetcsv a nie fgets ?

aha: dalej tylko liczba wierszów jest nie znajoma... zawsze się kończy na pole3, tylko duże litery się zmieniają
smile.gif
aiv
Cytat(simperium @ 7.01.2008, 17:08:01 ) *
"Apole1","Apole2","Apole3"
"Bpole1","Bpole2","Cpole3"


  1. <?php
  2. $file = file('plik.txt');
  3. echo "Liczba wierszy w pliku to: ". count($file)."<br />\n";
  4. foreach($file as $line) {
  5. $line = explode(',', $line);
  6. echo "Liczba kolumn w aktualnym wierszu: ". count($line)."<br />\n";
  7. foreach($line as $record) {
  8. $record = trim(trim($record), '"');
  9. echo "$record ";
  10. }
  11. echo "<br />\n";
  12. }
  13. ?>
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.