Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] tablica, explode z pliku
kojot007
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.02.2009

Ostrzeżenie: (0%)
-----


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.

Ten post edytował kojot007 14.02.2009, 14:33:59
Go to the top of the page
+Quote Post
kefirek
post
Post #2





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

Ostrzeżenie: (0%)
-----


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. ?>
Go to the top of the page
+Quote Post
kojot007
post
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.02.2009

Ostrzeżenie: (0%)
-----


hm skrypt działa w nieskończoność ... (IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif)
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




  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. ?>
Go to the top of the page
+Quote Post
kojot007
post
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.02.2009

Ostrzeżenie: (0%)
-----


niedziałą (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif)

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

ID: 102112
nazwa: dana
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




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. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
kojot007
post
Post #7





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.02.2009

Ostrzeżenie: (0%)
-----


hm właśnie nie za bardzo, bo jestem początkujący w PHP :-)
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




string" title="Zobacz w manualu PHP" target="_manual

do poduszki. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
kojot007
post
Post #9





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.02.2009

Ostrzeżenie: (0%)
-----


to już czytałem... (IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif)
Go to the top of the page
+Quote Post
erix
post
Post #10





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Ok, i jakie wnioski? Zauważyłeś pewnie rozdział "łączenie stringów", nie?
Go to the top of the page
+Quote Post
kefirek
post
Post #11





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

Ostrzeżenie: (0%)
-----


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. ?>


Ten post edytował kefirek 14.02.2009, 21:49:18
Go to the top of the page
+Quote Post
kojot007
post
Post #12





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.02.2009

Ostrzeżenie: (0%)
-----


działa dzięki :-)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.09.2025 - 13:37