вывести первые 3 элемента хэш массива

Ajax

Guest
вывести первые 3 элемента хэш массива

Наверное глупый вопрос но все же)
есть Хэш
hash['asdasd']=34;
hash['sdhsdfhf']=87;
hash['erhsdfhsdfh']=21;
hash['wrtgsadgasd']=9;
hash['aserwerwer']=0;
hash['aqwewetjghj']=1;
hash['kkshjd']=4;

как вывести первые 3 элемента , то есть
34 87 и 21 ??
 

Alkinoy

Guest
Вариант 1
echo hash['asdasd'], hash['sdhsdfhf'], hash['erhsdfhsdfh']=21;

Вариант 2
reset(hash);
for ($i=0, $i<3, $i++)
{
echo current(hash);
next(hash);
}
 

Sindel

Guest
PHP:
$hash = array_slice ($hash, 0, 3);
как я понимаю ключи неизвестны? Тогда далее:
PHP:
$hash = array_values($hash); // $hash[0] = 34; $hash[1] = 87; $hash[2] = 21;
Или
PHP:
list($first, $second, $fird) = array_values($hash);
echo $first, $second, $fird;
// 348721
 

Sindel

Guest
Автор оригинала: Alkinoy
Вариант 1
PHP:
echo hash['asdasd'], hash['sdhsdfhf'], hash['erhsdfhsdfh']=21;
Вариант 2
PHP:
reset(hash);
for ($i=0, $i<3, $i++)
{
echo current(hash);
next(hash);
}
Вариант 2 - решение через жопу
А вариант 1 не подойдёт если ключи неизвестны
 

Ajax

Guest
Ключи не известны, но их нужно сохранить то есть вывсети
ключ -> значение !
 

Sindel

Guest
PHP:
$hash = array_slice ($hash, 0, 3);
echo "<pre>";
print_r($hash);
 

Sindel

Guest
HabaHaba
Ты чё до сих пор PHP3 юзаешь?

Ajax
PHP:
foreach($array as $key => $value){
     echo "$key => $value<br>";
}
 

Фанат

oncle terrible
Команда форума
$i=0;
foreach($arr as $val) {
echo $val;
if (++$i==3) break;
}

Синдель, воздержись от подобных замечаний.
нормальное решение с фор
уж получше твоего будет
 

ForJest

- свежая кровь
PHP:
foreach(array_slice ($hash, 0, 3) as $val)
{
     echo $val;
}
PHP:
echo array_shift($hash);
echo array_shift($hash);
echo array_shift($hash);
:)
 
Сверху