Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
--TEST--
2
Function -- array_udiff
3
--SKIPIF--
4
<?php if (function_exists('array_udiff')) { echo 'skip'; } ?>
5
--FILE--
6
<?php
7
require_once 'PHP/Compat.php';
8
PHP_Compat::loadFunction('array_udiff');
9
 
10
class cr {
11
    var $priv_member;
12
    function cr($val)
13
    {
14
        $this->priv_member = $val;
15
    }
16
 
17
    function comp_func_cr($a, $b)
18
    {
19
        if ($a->priv_member === $b->priv_member) return 0;
20
        return ($a->priv_member > $b->priv_member)? 1:-1;
21
    }
22
}
23
 
24
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
25
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);
26
 
27
$result = array_udiff($a, $b, array("cr", "comp_func_cr"));
28
echo serialize($result);
29
?>
30
--EXPECT--
31
a:2:{s:3:"0.5";O:2:"cr":1:{s:11:"priv_member";i:12;}i:0;O:2:"cr":1:{s:11:"priv_member";i:23;}}