<?php
echo max(2, 3, 1, 6, 7), PHP_EOL; // 7
echo max(array(2, 4, 5)), PHP_EOL; // 5
// Здесь сравниваются 0 > -1, поэтому 'hello' больше
echo max('hello', -1), PHP_EOL; // hello
// При сравнении массивов разной длины функция max вернёт более длинный
$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(1, 1, 1, 1)
var_dump($val);
// При сравнении массивов одинаковой длины — функция max будет сравнивать их поэлементно
// слева направо, в этом примере 2 == 2, но 4 < 5
$val = max(array(2, 4, 8), array(2, 5, 1)); // array(2, 5, 1)
var_dump($val);
// Если передан массив и не массив, будет возвращён массив
$val = max('string', array(2, 5, 7), 42); // array(2, 5, 7)
var_dump($val);
// Значение NULL или логическое значение, которое передали в каком-либо аргументе, сравнивается с другими
// значениями по правилу FALSE < TRUE независимо
// от типа других аргументов.
// В следующем примере значение -10 трактуется как значение TRUE
$val = max(-10, FALSE); // -10
var_dump($val);
// 0 трактуется как FALSE, значит, он «меньше» TRUE
$val = max(0, TRUE); // TRUE
var_dump($val);
?>