PHP ilişkisel Dizi

3 Cevap php

PHP bir ilişkisel dizi var

$asd['a'] = 10;
$asd['b'] = 1;
$asd['c'] = 6;
$asd['d'] = 3;

i değerinin temelinde bu sıralamak için ve ilk 4 değerleri için anahtar değerini almak istiyorum.

ben bu php nasıl yapabilirim??

3 Cevap

asort() endeksi dernek tutmalı:

asort($asd);

Bundan sonra, basit bir foreach size önümüzdeki dört değerleri alabilirsiniz

$i = 0;
foreach ($asd as $key=>$value)
{
  if ($i >= 4) break;
  // do something with $asd[$key] or $value
  $i++;
}

Diğer yanıtlar için bir alternatif. Bir döngü olmadan bu bir:

asort($asd);
$top_four_keys = array_slice(array_keys($asd), 0, 4);

asort fonksiyonu sıralamak gerekenler.

Değerleri almak için, bu gibi bir kod kullanabilirsiniz:

$myKeys = array_keys(asort($asd));
$myNewItems = Array();
for ($i = 0; $i < 4; $i++)
    $myNewItems[$myKeys[$i]] = $asd[$myKeys[$i]];

Uygun tuşları ile, $ myNewItems içine ilk kürk öğeleri koymak ve sıralama düzeni hangi.