Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Rozbicie tablicy
Damiankossek
post 30.11.2010, 01:41:39
Post #1





Grupa: Zarejestrowani
Postów: 118
Pomógł: 8
Dołączył: 10.12.2009

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


Witam, mój kod wygląda następująco:
  1. <?php
  2.  
  3. $_POST['username'] = "Jacek";
  4. $_POST['password'] = "Kowalski";
  5. $_POST['surname'] = "haslo";
  6.  
  7. $arrayek = $_POST;
  8.  
  9. foreach($arrayek as $k => $v)
  10. {
  11. $array[$k] = null;
  12. $array[$v] = null;
  13. }
  14.  
  15. print_r($array);
  16.  


Chciałbym rozbić zmienną $arrayek na dwie części smile.gif Czyli mieć talice z : Array('username','password','surname') i Array('Jacek','Kowalski','Haslo'). Niestety ale tym sposobem co wyżej wymieniłem otrzymuje:

Array('username' =>,'password' =>,'surname' =>)

Zapewne ze względu na to że tablica = NULL . Jak utworzyć taką tablice jak ja potrzebuje ?
Go to the top of the page
+Quote Post
markonix
post 30.11.2010, 01:54:38
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Już na samym początku czegoś nie rozumiem.
Chcesz otrzymać DWIE tablice to dlaczego w pętli tworzysz tylko jedną?

Wynik print_r, który napisałeś to chyba nie z tego kodu.
Jak byk widać że tworzy tablice o indeksach: indeks, wartość, indeks, wartość, index, wartość (wszystko = null)

Rozwiązanie:
Twórz DWIE tablice. Indeks zostaw pusty [] no a wartość to $k dla tablicy pierwszej, $v dla drugiej (i tak 3 razy).

Ten post edytował markonix 30.11.2010, 02:00:16


--------------------
Go to the top of the page
+Quote Post
maviozo
post 30.11.2010, 03:10:51
Post #3





Grupa: Zarejestrowani
Postów: 197
Pomógł: 24
Dołączył: 22.11.2010

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


Żadnych pętli nie trzeba smile.gif
Aby uzyskać Array('username','password','surname') :
Kod
$tab1=array_keys($_POST);


Aby uzyskać Array('Jacek','Kowalski','Haslo') :
Kod
$tab2=array_values($_POST);


Ten post edytował maviozo 30.11.2010, 03:11:36
Go to the top of the page
+Quote Post
Damiankossek
post 30.11.2010, 14:18:02
Post #4





Grupa: Zarejestrowani
Postów: 118
Pomógł: 8
Dołączył: 10.12.2009

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


Cytat(markonix @ 30.11.2010, 01:54:38 ) *
Już na samym początku czegoś nie rozumiem.
Chcesz otrzymać DWIE tablice to dlaczego w pętli tworzysz tylko jedną?

Wynik print_r, który napisałeś to chyba nie z tego kodu.
Jak byk widać że tworzy tablice o indeksach: indeks, wartość, indeks, wartość, index, wartość (wszystko = null)

Rozwiązanie:
Twórz DWIE tablice. Indeks zostaw pusty [] no a wartość to $k dla tablicy pierwszej, $v dla drugiej (i tak 3 razy).


Witam, tak popełniłem błąd tworząc tylko jedną pętle winksmiley.jpg Ale w skrypcie miałem poprawnie, poprostu jak tutaj pisałem to literówka, zresztą póżno było winksmiley.jpg A Twojego rozwiązania nie rozumiem bo jak zrobię to co Ty mówisz czyli $tablica[] = $k, to wyjdzie mi array(0 => Zawartosc K);

Ale kolega maviozo podał bardzo dobre rozwiązanie smile.gif

W każdym bądz razie dziękuje za odpowiedzi
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 23:32