我如何得到max();显示最高值数字而不仅仅是“数组”?

时间:2009-07-22 22:13:26

标签: php

MAX($字幕);
给我这个:
阵列

$ caption在这里定义:

$i = "0";  
   while ($i < $count) {  
      list($oldCaption, $year, $order) = explode("-", $galleryDirectory[$i]);  
      $caption[$year][$order] = str_replace("_", " ", "$oldCaption");  
      echo $year; //debug
      echo "<br />";
      $i++;  
   }  

$ year出来是 2008
2009年
2009年

所以如何获得最大值($ caption);给我2009年的价值而不是数组?

我也会把整个代码,但是当我尝试它时,它变得凌乱。但我会再试一次,所以你们可以看到整个图片

1 个答案:

答案 0 :(得分:4)

使用array_keys()

$years = array_keys($caption);
$maxYear = max($years);

// or the one-liner:
$maxYear = max(array_keys($caption));

您的代码无效的原因是您正在比较数组$caption的值,这是另一个数组。 max()比较int值,而不是键和数组。在$caption上使用array_keys()创建另一个数组,其中所有年份都为值。