使用max函数从多维数组中获取最大值

时间:2016-05-11 19:00:35

标签: php arrays multidimensional-array

<?php
$heading = "The Flash 3";
$arrays = array("the-flash","tv-shows","games","videos");
$playerdata = array();
foreach ($arrays as $key => $tag) {
similar_text($tag, $heading, $percent); 
$playerdata = array(
'tag' => $tag,
'goals' => $percent
 );   
 $allplayerdata[] = $playerdata;
 }
 print_r($allplayerdata);
 ?>
Result Of print_r($allplayerdata);
([0] => Array ( [tag] => the-flash [goals] => 60 ) 
[1] => Array ([tag] => tv-shows [goals] => 21.052631578947 ) 
[2] => Array ( [tag] => games [goals] => 25 ) 
[3] => Array ( [tag] => videos [goals] => 23.529411764706 ) )    

我所需要的只是最大值和标签名称,即-flash和目标= 60 值来自DB .. Thnx

1 个答案:

答案 0 :(得分:0)

您可以将foreach循环替换为:

$max = $max_tag = NULL;
foreach ($arrays as $tag) {
    similar_text($tag, $heading, $percent); 
    $playerdata = array(
        'tag' => $tag,
        'goals' => $percent
    );   
    $allplayerdata[] = $playerdata;
    if (is_null($max) || $percent > $max) {
        $max = $percent;
        $max_tag = $tag;
    }
}
echo "Max = {$max}, max tag = {$max_tag}";
相关问题