Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Zbudowanie tablicy z pętli for
kaszanka
post
Post #1





Grupa: Zarejestrowani
Postów: 138
Pomógł: 1
Dołączył: 17.02.2007

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


Hi,

Mam w zmiennej $name zapis:
  1. <?php
  2. jablka,gruszki,poziomki,...,...,...
  3. ?>
rozdzielam to:
  1. <?php
  2. $name_e = explode(",", $name);
  3. $ile_name = count ($name_e;
  4. ?>

I teraz muszę każdą $name_e wsadzić w tablicę która ma wyglądać tak;
  1. <?php
  2. [0]=>jablka,[1]=>gruszki,...
  3. ?>
więc pisze:

  1. <?php
  2. for($i=0; $i<$ile_name; $i++){
  3. $tab = Array(''.$i++.'' => ''.$name_e[$i].''
  4.  );
  5. ?>
jednak nie tworzy to tablicę jaką bym chciał.
Go to the top of the page
+Quote Post
PawelC
post
Post #2





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

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


Najprościej:
  1. <?php
  2. $name = explode(",", $name);
  3. print_r($name);
  4. ?>

I tworzy Ci się tablica (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) wynik zobaczysz po odpaleniu skryptu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Wynik u mnie:
Cytat
Array ( [0] => agrest [1] => pomidor [2] => cytryna )


Ten post edytował ExPlOiT 26.04.2008, 17:18:38
Go to the top of the page
+Quote Post
kaszanka
post
Post #3





Grupa: Zarejestrowani
Postów: 138
Pomógł: 1
Dołączył: 17.02.2007

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


no takie to proste :]
thx!

hmm
Chyba idę trochę złą drogą bo tablicę tą muszę jakoś przedstawić jako jedną zmienną $nazwy do komendy która jest wysyłana curlem.
Podanie np: $nazwy = print_r($name); nic nie daje.
Go to the top of the page
+Quote Post
PawelC
post
Post #4





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

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


W takim wypadku używasz foreach do tego aby móc normalnie wykorzystać dane:
  1. <?php
  2. foreach($name as $dane){
  3. echo $dane;
  4. }
  5. ?>

I posługujesz się $dane, co w efekcie wyświetli ci dane z tablicy ale bez klucza.

Cytat
Podanie np: $nazwy = print_r($name); nic nie daje.

Przy takim stosowaniu trzeba by było jeszcze dodać indeks np
  1. <?php
  2. print_r($name[1]);
  3. ?>

Wtedy wyświetli Ci z tablicy zawartość gdzie indeks wynosi 1.

Ten post edytował ExPlOiT 26.04.2008, 17:52:32
Go to the top of the page
+Quote Post
kaszanka
post
Post #5





Grupa: Zarejestrowani
Postów: 138
Pomógł: 1
Dołączył: 17.02.2007

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


No dobra ale wg Twojego przykładu cała tablica nadal nie jest umieszczona w jednej zmiannej.
Potrzebują tablicę umieścić w tego typu komendzie:
  1. <?php
  2. ...
  3. ."&query[data][produkty:operation]=add"
  4. ."&query[data][name]=$name" // gdzie $name jest właśnie tablicą w postaci [0]=>jablka,[1]=>gruszki,...I całą tą tablicę muszę wysłać w tej jednej komendzie za jednym ra
    zem.
  5. ;
  6. ?>
Go to the top of the page
+Quote Post
PawelC
post
Post #6





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

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


No ok w takim wypadku gdy chcesz wszystko zapisać do jednej zmiennej musisz użyć pętli for do tego i zliczyć ilość rekordów a później wszystkie rekordy z pliku tekstowego przypisać do jednej zmiennej:
  1. <?php
  2. $name = explode(",", $name);
  3. $suma=count($name); //zliczenie rekordów
  4.  
  5. for($i=0; $i< $suma; $i++)
  6.  
  7. $dane.=$name[$i]; //przypisywanie do jednej zmiennej
  8. echo $dane;
  9.  
  10. ?>

I teraz wszysko jest w jednej zmiennej, czyli $dane (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował ExPlOiT 26.04.2008, 18:32:19
Go to the top of the page
+Quote Post
kaszanka
post
Post #7





Grupa: Zarejestrowani
Postów: 138
Pomógł: 1
Dołączył: 17.02.2007

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


Dalej to nie jest to o co mi chodzi (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
  1. <?php
  2. echo $dane;
  3. ?>

wyświetla nam teraz:
agrestpomidorcytryna
a powinno wyglądać tak:
  1. <?php
  2. [0] => agrest [1] => pomidor [2] => cytryna....
  3. ?>
Go to the top of the page
+Quote Post
PawelC
post
Post #8





Grupa: Zarejestrowani
Postów: 1 173
Pomógł: 121
Dołączył: 24.09.2007
Skąd: Toruń

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


  1. <?php
  2. $name = explode(",", $name);
  3. $dane=print_r($name);
  4. echo $dane;
  5.  
  6. ?>
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: 12.10.2025 - 09:31