Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]min() na wielowymiarowej tablicy
Forum PHP.pl > Forum > Przedszkole
Nightwalker
Cześć,
Jest sobie kawałek skryptu, który tworzy dwuwymiarową tablicę

Kod
    Array
(
    [0] => Array
        (
            [product_id] => 1
            [price] => 10
        )
    [1] => Array
        (
            [product_id] => 2
            [price] => 5
        )
)



I teraz chciałbym, aby price o mniejszej wartości przyjmował wartość 0. funkcja min() obsługuje tylko jednowymiarowe tablice, nie zwraca też nazwy klucza, tak więc:

  1. foreach( $tablica as $id => $price )
  2. {
  3. $product[$id] = $price['price'];
  4. }
  5.  
  6. min( $product ); // zwróci tylko 5, ale nie zwróci nazwy klucza (0, 1 itd), więc nie mogę przekazać skryptowi, który ['price'] w $tablica ma przyjąć wartość 0

wookieb
No dobrze ale skoro masz już najmniejszą wartość to możęsz wyszukać jej klucz za pomocą array_search
Valdi_B
Pytanie: Czy masz gwarancję, że nie może być kilku produktów z taką minimalną ceną?
Bo w przypadku "negatywnym" musisz:
1. Znaleźć tę najmniejszą wartość.
2. Przelecieć jeszcze raz po tablicy i wyzerować wszystkie ceny = min.
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.