2013-12-10 47 views
-2

我從關聯數組中查看了最大的問題,但是我正在尋找一個班輪。我有像下面的陣列,一個班輪在php中查找關聯數組的最大數組

$studenRsults=array(
    array(
     'roll'=>1, 
     'name'=>'jack Smit', 
     'marks'=>70 
), 

    array(
     'roll'=>4, 
     'name'=>'Sita', 
     'marks'=>50 
), 
    array(
     'roll'=>2, 
     'name'=>'Akhilesh', 
     'marks'=>80 
), 
    array(
     'roll'=>3, 
     'name'=>'jon', 
     'marks'=>50 
), 
); 

請建議一個班輪謝謝。

+0

最大的是什麼? – Barmar

+0

爲什麼它必須是一個「班輪」?代碼的質量和可讀性不是通過完成所需的行數來衡量的。 –

+0

顯示你迄今爲止完成的工作。 – michi

回答

0

這需要對array_column

$max = max(array_column($studenRsults, 'marks')); 

或PHP 5.3+的lamdas

$max = max(array_map(function($el){ return $el['marks']; }, $studenRsults)); 
PHP 5.5+
+0

這太棒了。我從來沒有想過我可以在數組映射中創建一個函數。多謝隊友.. – Dirgh

0

假設你的意思是最大滾動。但是,是的,代碼質量是不是你有多大的幾行測...

foreach($studenRsults as $result) $maxResult = (isset($maxResult['roll']) && ($maxResult['roll'] > $result['roll'])) ? $maxResult : $result; 

print_r($maxResult); // print the max roll student 
+0

我並不是說要把它寫成一行。無論如何感謝您的幫助 – Dirgh