Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dodawanie elementu do tablicy i sortowanie
Forum PHP.pl > Forum > PHP
Mayka
Witam, mam taką sobie o to tablice
  1. Array ( [0] => Array ( [id] => 57 [ord] => 3 ) [1] => Array ( [id] => 58 [ord] => 2 ) [2] => Array ( [id] => 59 [ord] => 2 ) [3] => Array ( [id] => 60 [ord] => 3 ) [4] => Array ( [id] => 61 [ord] => 3 ) )

I teraz chciałbym coś zrobić żeby dodać do tej tablicy np. $do_wstawienia = Array('id' => '57', 'ord' => '3' );
w dowolne miejsce (niech by było np 1) i żeby indexy tablcy sie posortowały.. Da się takie coś zrobić ?

Ew może można taki myk zrobić już z poziomu mysql'a ?
Bo mam sobie elementy które są w sortowane wg pola ord. i teraz chciałbym zrobić taki myk że przesuwam na początek jakiś element i no i mam 2 elementy z indexem zero, to teraz żeby ten co był zrobił się jedynką, jedynka dwójką , dwójka trójka itd.... ?

Znalazłem gdzieś coś takiego
  1. function array_insert(&$array, $offset, $element) {
  2. $array = array_merge(array_slice($array, 0, $offset), (array) $element, array_slice($array, $offset));
  3. }

Ale to nie chce mi dodać tablicy do tablicy, robi Array ( [0] => Array ( [id] => 57 [ord] => 3 ) [id] => 57 [ord] => 3 [1] => Array ( [id] => 58 [ord] => 2 )
Prawie... ale jednak nie, może ktoś ew wie jak to poprawić ?
amii
Tu masz gotową funkcję http://pl1.php.net/manual/en/function.arra...shift.php#83808
Mayka
dzieki, jutro ją przetestuje wink.gif

Funkcja działa, wszystko ok, tylko jak teraz zrobić żeby to ID które jest dodawane kasowało to które już jest ?
Bo teraz mam dodane, posortowane tak jak miało byc - ok ale mam dwa elementy gdzie id jest np 11..

To sobie wymyśliłem funkcje do przeszukiwania
  1. function array_key($tablica, $wartosc){
  2. foreach ($tablica as $index => $war){
  3. if(in_array($wartosc, $war)){
  4. return $index;
  5. }


No i sobie usuwam ta wartość ale teraz nie zgadza mi sie index..
amii
Jako, że tabliczkę przekazujesz do tej funkcji (co Ci dałem linka) przez referencję, może spróbuj unset się pobawić w tej funkcji.
Mayka
Zrobiłem, dzieki jeszcze raz za pomoc.
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.