/** * 取出 一个数组中最大值 * @param $arr * @return int|mixed */
function getMax( $arr ){ if (! is_array ( $arr )){ exit ( '参数必须是数组' ); } if ( count ( $arr )== 0 ){ exit ( '数组不能为空' ); } if ( count ( $arr )== 1 ){ return array_shift ( $arr ); } $max = 0 ; foreach ( $arr as $k => $v ) { if ( $max < $v ) { $max = $v ; } } return $max ; }
/** * 取第一 第二值 * @param $arr * @return array|mixed */
function getTwoMax( $arr ){ if (! is_array ( $arr )){ exit ( '参数必须是数组' ); } if ( count ( $arr )== 0 ){ exit ( '数组不能为空' ); } if ( count ( $arr )== 1 ){ return array_shift ( $arr ); } $max = 0 ; $two = 0 ; foreach ( $arr as $k => $v ) { if ( $max < $v ) { $two = $max ; $max = $v ; } else { if ( $two < $v ){ $two = $v ; } } } return [ 'max' => $max , 'two' => $two ]; } $arr = [ 10 , 2 , 5 , 55 , 333 ]; $data =getTwoMax( $arr ); var_dump ( $data );