max

(PHP 4, PHP 5, PHP 7, PHP 8)

maxLocaliza o maior valor

Descrição

max(mixed $value, mixed ...$values): mixed

Forma alternativa (não suportada com argumentos nomeados):

max(array $value_array): mixed

Se o primeiro e único parâmetro for um array, max() retorna o maior valor do array. Se no mínimo dois parâmetros forem fornecidos, max() retorna o maior desses valores.

Note:

Valores de diferentes tipos serão comparados utilizando as regras padrões de comparação. Por exemplo, uma string não numérica será comparada a um int como se fosse 0, mas várias strings não numéricas serão comparadas alfanumericamente. O valor real retornado terá o tipo do original, sem nenhuma conversão aplicada.

Caution

Cuidado ao passar argumentos de tipos diferentes, pois max() pode produzir resultados imprevisíveis.

Parâmetros

value

Qualquer valor comparável.

values

Quaisquer valores comparáveis.

value_array

Um array contendo os valores.

Valor Retornado

max() retorna o parâmetro considerado o "maior" de acordo com as comparações padrões. Se vários valores de tipos diferentes forem considerados iguais (por exemplo, 0 e 'abc') então o primeiro fornecido à função será retornado.

Erros/Exceções

Se um array vazio for informado, max() lança um ValueError.

Registro de Alterações

Versão Descrição
8.0.0 max() lança um ValueError em caso de erros. Anteriormente, retornava false e emitia um alerta E_WARNING.
8.0.0 Como as comparações de strings com números foram alteradas, max() não mais retorna um valor diferente por conta da ordem dos argumentos informados.

Exemplos

Example #1 Exemplos de max()

<?php
echo max(2, 3, 1, 6, 7);  // 7
echo max(array(2, 4, 5)); // 5

// Aqui na prática compara-se -1 < 0, então 'hello' é o maior valor
echo max('hello', -1);    // hello

// Arrays de múltiplos valores e tamanhos diferentes, retora o mais longo
$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(1, 1, 1, 1)

// Em arrays de mesmo tamanho compara-se da esquerda para direita
// e nesse exemplo: 2 == 2, mas 5 > 4
$val = max(array(2, 4, 8), array(2, 5, 1)); // array(2, 5, 1)

// Se um array e um não array são informados, o array será retornado
// pois é considerado maior que qualquer outro valor
$val = max('string', array(2, 5, 7), 42);   // array(2, 5, 7)

// Se um argumento é NULL ou booleano, ele será comparado contra
// outros valores utilizando a regra FALSE < TRUE independente dos tipos envolvidos.
// No exemplo abaixo -10 é tratado como TRUE na comparação
$val = max(-10, FALSE); // -10

// 0 por outro lado é considerado false, de forma que é "menor que" TRUE
$val = max(0, TRUE); // TRUE
?>

Veja Também

  • min() - Encontra o menor valor
  • count() - Conta todos os elementos de um array ou de um objeto Countable