Annotation of embedaddon/php/ext/standard/tests/array/array_diff_uassoc_variation14.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test array_diff_uassoc() function : usage variation -Passing classWithoutToString (handling fatal error) to callback
3: --FILE--
4: <?php
5: /* Prototype : array array_diff_uassoc(array arr1, array arr2 [, array ...], callback key_comp_func)
6: * Description: Computes the difference of arrays with additional index check which is performed by a
7: * user supplied callback function
8: * Source code: ext/standard/array.c
9: */
10:
11: echo "*** Testing array_diff_uassoc() : usage variation ***\n";
12:
13: //Initialize array
14: $array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
15: $array2 = array("a" => "green", "yellow", "red");
16:
17: class classWithoutToString
18: {
19: }
20:
21: // Define error handler
22: function test_error_handler($err_no, $err_msg, $filename, $linenum, $vars) {
23: if (error_reporting() != 0) {
24: // report non-silenced errors
25: echo "Error: $err_no - $err_msg, $filename($linenum)\n";
26: }
27: }
28: set_error_handler('test_error_handler');
29:
30: $value = new classWithoutToString();
31: var_dump( array_diff_uassoc($array1, $array2, $value) );
32:
33: ?>
34: ===DONE===
35: --EXPECTF--
36: *** Testing array_diff_uassoc() : usage variation ***
37: Error: 2 - array_diff_uassoc() expects parameter 3 to be a valid callback, no array or string given, %s(%d)
38: NULL
39: ===DONE===
40:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>