Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]foreach i next()
Forum PHP.pl > Forum > Przedszkole
qbas-s
załóżmy, że mam taką tablicę:
  1. $array = array('a','b','c','d','e','f');


po przepuszczeniu jej przez foreach chciałbym uzyskać:

aktualna wartość:a ,następna wartość: b
aktualna wartość:c ,następna wartość: d
aktualna wartość:e ,następna wartość: f

Aktualny kod którym się posługuję

  1. foreach($array as $key => $value){
  2. echo "aktualna wartość:$value ";
  3. if(isset($array[$key+1])){
  4. echo 'następna wartość:'.next($array);
  5. }
  6.  
  7. }


ale on działa źle gdyż rezultat jest taki:

aktualna wartość:a ,następna wartość:b
aktualna wartość:b ,następna wartość:c
aktualna wartość:c ,następna wartość: d
aktualna wartość: d ,następna wartość:e
aktualna wartość:e ,następna wartość:f

mój problem rozwiązałaby funkcja która:
1. pobiera następną wartość
2. ustawia licznik foreach na ten po next()
Jarma
na początku foreacha

  1. if($key%2==1) continue;
qbas-s
sprawdziłem i kod zwraca takie pary(aktualnie w tablicy mam 5 elementów):

aktualna:a następna:b
aktualna:c następna:c // d jest ominięte bo wynik dzielenia to 1 więc continue - jak to rozwiązać?
aktualna:e
strife
  1. $array = array('a', 'b', 'c', 'd', 'e', 'f');
  2.  
  3. for ($i = 0; $i < count($array); $i++) {
  4. if ($i % 2 == 0) {
  5. echo "aktualna wartość: " . $array[$i] . ", ";
  6. }
  7.  
  8. if ($i % 2 != 0) {
  9. echo 'następna wartość: '. $array[$i] . "\n";
  10. }
  11.  
  12. }


Enjoy cool.gif
Pyton_000
@up a jak klucze nie będą numeryczne wink.gif
  1. <?php
  2.  
  3. $array = array('a','b','c','d','e','f');
  4.  
  5. while(list($key, $value) = each($array))
  6. {
  7. echo "aktualna wartość:$value, ";
  8.  
  9. list($key2, $val2) = each($array);
  10. if($val2)
  11. {
  12. echo "aktualna wartość:$val2 ".PHP_EOL;
  13. }
  14. }
qbas-s
Pyton_000 działa - dokładnie o to mi chodziło. Skrypt strife też działa ale nie dokładnie tak jak chciałem - w jednym powtórzeniu zwracał albo current albo next a mi zależy na jednym i drugim.

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.