<?php
$array = array(array('date'=>'2014-12-01', 'price'=>'123.00'), array('date'=>'2013-12-01', 'price'=>'123.00'), array('date'=>'2014-02-01', 'price'=>'123.00'), array('date'=>'2014-03-01', 'price'=>'123.00'));
var_dump($array);
function date_compare($a, $b, $key)
{
$t1 = strtotime($a[$key]);
$t2 = strtotime($b[$key]);
return $t1 - $t2;
}
usort($array, array('date_compare', 'date'));
var_dump($array);
- Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
Fatal error: Uncaught TypeError: usort(): Argument #2 ($callback) must be a valid callback, class "date_compare" not found in /in/ZRXQS:12
Stack trace:
#0 /in/ZRXQS(12): usort(Array, Array)
#1 {main}
thrown in /in/ZRXQS on line 12
Process exited with code 255. - Output for 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.24 - 5.5.35, 5.6.7 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
- array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
Warning: usort() expects parameter 2 to be a valid callback, class 'date_compare' not found in /in/ZRXQS on line 12
array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
- Output for 5.2.5 - 5.2.17
- array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
Warning: usort(): Invalid comparison function in /in/ZRXQS on line 12
array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
- Output for 4.3.9 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.4
- array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
Warning: usort(): Invalid comparison function. in /in/ZRXQS on line 12
array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
- Output for 4.3.0 - 4.3.8
- array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
}
array(4) {
[0]=>
array(2) {
["date"]=>
string(10) "2014-03-01"
["price"]=>
string(6) "123.00"
}
[1]=>
array(2) {
["date"]=>
string(10) "2014-02-01"
["price"]=>
string(6) "123.00"
}
[2]=>
array(2) {
["date"]=>
string(10) "2013-12-01"
["price"]=>
string(6) "123.00"
}
[3]=>
array(2) {
["date"]=>
string(10) "2014-12-01"
["price"]=>
string(6) "123.00"
}
}
preferences:
256.79 ms | 403 KiB | 342 Q