Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] pętla foreach
Forum PHP.pl > Forum > Przedszkole
Willaim
Witam!
Problem tak głupi, że wstyd mi o tym pisać. Nie pierwszy raz używam tej pętli a tu nagle nieznany mi problem.
Do rzeczy: pobieram z bazy z pomocą adodb tablicę, a następnie próbuję ją przepisać...
  1. $baza = Array (
  2. [0] => Array ( [0] => 1 [id] => 1 [1] => office [mala] => office [2] => Office [duza] => Office )
  3. [1] => Array ( [0] => 2 [id] => 2 [1] => ms [mala] => ms [2] => MS [duza] => MS )
  4. [2] => Array ( [0] => 3 [id] => 3 [1] => kategori b [mala] => kategori b [2] => kategori B [duza] => kategori B )
  5. [3] => Array ( [0] => 4 [id] => 4 [1] => kat.b [mala] => kat.b [2] => kat.B [duza] => kat.B )
  6. [4] => Array ( [0] => 5 [id] => 5 [1] => kat. b [mala] => kat. b [2] => kat. B [duza] => kat. B )
  7. )
  8.  
  9. $i=0;
  10. foreach ($baza as $jeden);
  11. {
  12. $duze[$i] = $jeden['duza'];
  13. $male[$i] = $jeden['mala'];
  14. $i++;
  15. }


Macie może pomysł dlaczego ta nieszczęsna pętla uparcie wykonuje się tylko raz?

Z góry dziękuję za pomoc!
piotrooo89
a co chcesz otrzymać w tablicach wynikowych?

//EDIT

myśle że coś takiego:

  1. <?
  2. $baza[0][0] = 1;
  3. $baza[0]['id'] = 1;
  4. $baza[0][1] = 'office';
  5. $baza[0]['mala'] = 'office';
  6. $baza[0][2] = 'Office';
  7. $baza[0]['duza'] = 'Office';
  8.  
  9. $baza[1][0] = 2;
  10. $baza[1]['id'] = 2;
  11. $baza[1][1] = 'ms';
  12. $baza[1]['mala'] = 'ms';
  13. $baza[1][2] = 'MS';
  14. $baza[1]['duza'] = 'MS';
  15.  
  16. $baza[2][0] = 3;
  17. $baza[2]['id'] = 3;
  18. $baza[2][1] = 'kategori b';
  19. $baza[2]['mala'] = 'kategori b';
  20. $baza[2][2] = 'kategori B';
  21. $baza[2]['duza'] = 'kategori B';
  22.  
  23. $baza[3][0] = 4;
  24. $baza[3]['id'] = 4;
  25. $baza[3][1] = 'kat.b';
  26. $baza[3]['mala'] = 'kat.b';
  27. $baza[3][2] = 'kat.B';
  28. $baza[3]['duza'] = 'kat.B';
  29.  
  30. $baza[4][0] = 5;
  31. $baza[4]['id'] = 5;
  32. $baza[4][1] = 'kat. b';
  33. $baza[4]['mala'] = 'kat. b';
  34. $baza[4][2] = 'kat. B';
  35. $baza[4]['duza'] = 'kat. B';
  36.  
  37.  
  38. print_r($baza);
  39. foreach ($baza as $jeden)
  40. {
  41. foreach($jeden as $j => $val)
  42. {
  43. if ($j == 'mala')
  44. $male[] = $val;
  45. elseif ($j== 'duza')
  46. $duze[] = $val;
  47. }
  48. }
  49. print_r($duze);
  50. print_r($male);
  51. ?>


sprosta oczekiwaniom.
Willaim
Potrzebuję uzyskać dane w postaci:
  1. $duze = Array (
  2. [0] = 'Office'
  3. [1] = 'MS'
  4. [2] = 'kategori B'
  5. [3] = 'kat.B'
  6. [4] = 'kat. B'

Bądź w innej kolejności, byle w takiej samej w obu tablicach.
Te tablice dalej użyję jako argumenty do str_replace.

Tymczasem otrzymuję
  1. $duze = Array ( [0] = 'kat. B')


EDIT //

Dokładnie to chodziło.

Dziękuję piotrooo89!
Burned
Jaki jest wynik wykonania
  1. print_r($baza);

?
Willaim
Burned, przekleiłem go na samym początku party.gif
Dziękuję za chęci, ale jak już też napisałem winksmiley.jpg odpowiedź piotrooo89 była w pełni satysfakcjonująca i funkcja już śmiga.
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.