| Revision 20119,
934 bytes
checked in by nanasess, 15 years ago
(diff) |
|
module 以下は svn:keywords を除外
|
-
Property svn:eol-style set to
LF
|
| Line | |
|---|
| 1 | --TEST-- |
|---|
| 2 | Function -- array_udiff_assoc |
|---|
| 3 | --SKIPIF-- |
|---|
| 4 | <?php if (function_exists('array_udiff_assoc')) { echo 'skip'; } ?> |
|---|
| 5 | --FILE-- |
|---|
| 6 | <?php |
|---|
| 7 | require_once 'PHP/Compat.php'; |
|---|
| 8 | PHP_Compat::loadFunction('array_udiff_assoc'); |
|---|
| 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_assoc($a, $b, array("cr", "comp_func_cr")); |
|---|
| 28 | echo serialize($result); |
|---|
| 29 | ?> |
|---|
| 30 | --EXPECT-- |
|---|
| 31 | a:3:{s:3:"0.1";O:2:"cr":1:{s:11:"priv_member";i:9;}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;}} |
|---|
Note: See
TracBrowser
for help on using the repository browser.