Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] tablica, explode z pliku
Forum PHP.pl > Forum > Przedszkole
kojot007
Witajcie, otóż męczę się już kilka dni z problemem:

mam plik-bazę a w nim:

Kod
102112 dana
112121 dana
782222 dana


i teraz jak do tego dorobić aby explode robiło najpierw z nowej lini a poźniej spację i przekazywało to do tablicy?

znalazłem coś takiego:

Kod
$string=explode("\n",$string);
for($i=0;$i<count($string);$i++)
{
$string[$i]=explode(" ",$string[$i]);
}


ale też nie działa za bardzo.
kefirek
Zobacz moze tak
  1. <?php
  2. $plik = file("aa.txt");
  3. $linia=array();
  4. $dane=array();
  5. for ($i=0; $i<count($plik); $i++)
  6. {
  7. $linia[] = explode( "\t", $plik[$i]);
  8. }
  9.  
  10. for ($i=0; $i<count($plik); $i++)
  11. {  
  12. for ($i1=0; $i1<count($plik); $i1++)
  13. {
  14. $dane[] = explode(" ", $linia[$i][$i1]);
  15. }
  16. }
  17.  
  18. for ($i2=0; $i2<count($dane); $i2++)
  19. {
  20. for ($i3=0; $i3<count($dane); $i3++)
  21. {
  22. echo $dane[$i2][$i3].'<br>';      
  23. }
  24. }
  25. ?>
kojot007
hm skrypt działa w nieskończoność ... blinksmiley.gif
erix
  1. <?php
  2. $p = fopen('asd', 'r');
  3. $a = array();
  4.  
  5. while($x = fgets($p)){
  6.   $d = explode(' ', $x, 2);
  7.   $a[trim($d[0])] = trim($d[1]);
  8. }
  9.  
  10. fclose($p);
  11. ?>
kojot007
niedziałą worriedsmiley.gif

bo dane na stronie będę wyświetlać taK

ID: 102112
nazwa: dana
erix
Cytat
bo dane na stronie będę wyświetlać taK

To jaki problem zrobić coś takiego?
  1. <?php
  2. foreach($a as $ID=>$nazwa){
  3.    // wyswietl
  4. }
  5. ?>


chyba wiesz, co do czego. winksmiley.jpg
kojot007
hm właśnie nie za bardzo, bo jestem początkujący w PHP :-)
erix
string" title="Zobacz w manualu PHP" target="_manual

do poduszki. winksmiley.jpg
kojot007
to już czytałem... blinksmiley.gif
erix
Ok, i jakie wnioski? Zauważyłeś pewnie rozdział "łączenie stringów", nie?
kefirek
Zobacz tak powinno dzialac
  1. <?php
  2. $plik = file("aa.txt");
  3. $tab=array();
  4. $t=array();
  5. for ($i=0; $i<count($plik); $i++)
  6. {
  7. list($dana) = explode( "\t", $plik[$i]);
  8. $tab[] = $dana;
  9. }
  10.  
  11. foreach($tab AS $dane){
  12. list($d1, $d2) = explode(" ", $dane);
  13. $t[] = array("id"=>$d1, "nazwa"=>$d2);
  14. }
  15.  
  16. foreach($t AS $wynik){
  17. echo $wynik['id'].'<br>';
  18. echo $wynik['nazwa'].'<br>';  
  19. }
  20. ?>
kojot007
działa dzięki :-)
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.