svn: /phpdoc/en/trunk/reference/math/functions/ max.xml

From: Date: Tue, 12 Jan 2010 11:04:05 +0000
Subject: svn: /phpdoc/en/trunk/reference/math/functions/ max.xml
Groups: php.doc.cvs 
Request: Send a blank email to doc-cvs+get-5817@lists.php.net to get a copy of this message
degeberg Tue, 12 Jan 2010 11:04:05 +0000 Revision: http://svn.php.net/viewvc?view=revision&revision=293443 Log: Clarified comparison rules for max(). Closes PHP bug #50607 (max() should say more about multi-dimensional arrays) Bug: http://bugs.php.net/50607 (Open) max() should say more about multi-dimensional arrays Changed paths: U phpdoc/en/trunk/reference/math/functions/max.xml Modified: phpdoc/en/trunk/reference/math/functions/max.xml =================================================================== --- phpdoc/en/trunk/reference/math/functions/max.xml 2010-01-12 09:28:02 UTC (rev 293442) +++ phpdoc/en/trunk/reference/math/functions/max.xml 2010-01-12 11:04:05 UTC (rev 293443) @@ -52,8 +52,19 @@ &reftitle.returnvalues; <para> <function>max</function> returns the numerically highest of the - parameter values. + parameter values. If multiple values can be considered of the same size, + the one that is listed first will be returned. </para> + <para> + When <function>max</function> is given multiple <type>array</type>s, the + longest array is returned. If all the arrays have the same length, + <function>max</function> will use lexicographic ordering to find the return + value. + </para> + <para> + When given a <type>string</type> it will be cast as an <type>integer</type> + when comparing. + </para> </refsect1> <refsect1 role="examples"> &reftitle.examples; @@ -66,12 +77,21 @@ echo max(1, 3, 5, 6, 7); // 7 echo max(array(2, 4, 5)); // 5 +// When 'hello' is cast as integer it will be 0. Both the parameters are equally +// long, so the order they are given in determines the result echo max(0, 'hello'); // 0 echo max('hello', 0); // hello + +echo max('42', 3); // '42' + +// Here 0 > -1, so 'hello' is the return value. echo max(-1, 'hello'); // hello -// With multiple arrays, max compares from left to right -// so in our example: 2 == 2, but 4 < 5 +// With multiple arrays of different lengths, max returns the longest +$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(1, 1, 1, 1) + +// With multiple arrays of the same length, max compares from left to right +// using lexicographic order, so in our example: 2 == 2, but 4 < 5 $val = max(array(2, 4, 8), array(2, 5, 7)); // array(2, 5, 7) // If both an array and non-array are given, the array

« previous php.doc.cvs (#5817) next »