Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Przenumerowanie kluczy
Forum PHP.pl > Forum > Przedszkole
lled3
Jak przenumerowac klucze(glowne) na (0,1,2,3) w takiej tablicy ?

  1. <?php
  2. $arr = array ( 10 => array('id' => 'dix', 'aa' => '1010'),
  3.  100 => array('id' => 'cent', 'aa' => '100100'),
  4.  2 => array('id' => 'deux', 'aa' => '22'), 
  5.  7 => array('id' => 'sept', 'aa' => '77'));
  6. ?>
.radex
$arr2 = array();

foreach($arr as $key => $var)
{
$arr2[] = $var;
}
lled3
a po oc definicja $arr2 = array();

skoro bez niej tez dziala smile.gif
.radex
żeby nie było potem pytań "skąd wziąłeś ten $arr2?" tongue.gif
rybik
I stąd, że pisząc skrypt który ma działać w nieznanym środowisku "w dobrym tonie" jest inicjować nowe zmienne, powodów jest kilka:

1. przy włączonym register_globals zmienna niezainicjowana nie zawsze będzie pusta
2. zainicjowanie tablicy pozwala na jednoznaczny kod, $arr2 będzie tablicą niezależnie od tego, czym jest $arr, jak $arr jest innego typu to masz jeden błąd w tej konkretnej funkcji (foreach - invalid parameter) i nie musisz szukać gdzie później używałeś funkcji tablicowych na $arr2

Poza tym opisany problem rozwiązuje funkcja array_values nie wyważajmy otwartych drzwi winksmiley.jpg
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.