Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]min() na wielowymiarowej tablicy
Nightwalker
post
Post #1





Grupa: Zarejestrowani
Postów: 180
Pomógł: 0
Dołączył: 5.02.2006
Skąd: Bytom

Ostrzeżenie: (10%)
X----


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

Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




No dobrze ale skoro masz już najmniejszą wartość to możęsz wyszukać jej klucz za pomocą array_search
Go to the top of the page
+Quote Post
Valdi_B
post
Post #3





Grupa: Zarejestrowani
Postów: 107
Pomógł: 30
Dołączył: 19.02.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 18:56