From: ladislav at marek dot su Operating system: Linux PHP version: 5.4Git-2012-08-30 (Git) Package: Class/Object related Bug Type: Bug Bug description:array_unique() misbehaves with array of DateTimes
Description: ------------ array_unique() returns duplicates for array which contains objects with DateTime instances. Test script: --------------- <?php class Foo { public $dt; function __construct($dt) { $this->dt = $dt; } } $foo = new Foo(new DateTime); $std = new stdClass; $arr = [$foo, $foo, $std, $std, $std]; var_dump(array_unique($arr, SORT_REGULAR)); Expected result: ---------------- array(4) { [0]=> object(Foo)#1 (1) { ["dt"]=> object(DateTime)#2 (3) { ["date"]=> string(19) "2012-08-30 15:18:01" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Prague" } } [2]=> object(stdClass)#3 (0) { } } Actual result: -------------- array(4) { [0]=> object(Foo)#1 (1) { ["dt"]=> object(DateTime)#2 (3) { ["date"]=> string(19) "2012-08-30 15:18:01" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Prague" } } [1]=> object(Foo)#1 (1) { ["dt"]=> object(DateTime)#2 (3) { ["date"]=> string(19) "2012-08-30 15:18:01" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Prague" } } [2]=> object(stdClass)#3 (0) { } [4]=> object(stdClass)#3 (0) { } } -- Edit bug report at https://bugs.php.net/bug.php?id=62977&edit=1 -- Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=62977&r=trysnapshot54 Try a snapshot (PHP 5.3): https://bugs.php.net/fix.php?id=62977&r=trysnapshot53 Try a snapshot (trunk): https://bugs.php.net/fix.php?id=62977&r=trysnapshottrunk Fixed in SVN: https://bugs.php.net/fix.php?id=62977&r=fixed Fixed in SVN and need be documented: https://bugs.php.net/fix.php?id=62977&r=needdocs Fixed in release: https://bugs.php.net/fix.php?id=62977&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=62977&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=62977&r=needscript Try newer version: https://bugs.php.net/fix.php?id=62977&r=oldversion Not developer issue: https://bugs.php.net/fix.php?id=62977&r=support Expected behavior: https://bugs.php.net/fix.php?id=62977&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=62977&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=62977&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=62977&r=globals PHP 4 support discontinued: https://bugs.php.net/fix.php?id=62977&r=php4 Daylight Savings: https://bugs.php.net/fix.php?id=62977&r=dst IIS Stability: https://bugs.php.net/fix.php?id=62977&r=isapi Install GNU Sed: https://bugs.php.net/fix.php?id=62977&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=62977&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=62977&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=62977&r=mysqlcfg