summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/array_intersect_ukey_variation7.phpt
diff options
context:
space:
mode:
authorSean Finney <seanius@debian.org>2009-04-10 14:09:48 +0200
committerSean Finney <seanius@debian.org>2009-04-10 14:09:48 +0200
commitcd0b49c72aee33b3e44a9c589fcd93b9e1c7a64f (patch)
tree1315c623bb7d9dfa8d366fa9cd2c6834ceeb5da5 /ext/standard/tests/array/array_intersect_ukey_variation7.phpt
parent9ea47aab740772adf0c69d8c94b208a464e599ea (diff)
downloadphp-upstream/5.2.9.dfsg.1.tar.gz
Imported Upstream version 5.2.9.dfsg.1upstream/5.2.9.dfsg.1
Diffstat (limited to 'ext/standard/tests/array/array_intersect_ukey_variation7.phpt')
-rw-r--r--ext/standard/tests/array/array_intersect_ukey_variation7.phpt63
1 files changed, 63 insertions, 0 deletions
diff --git a/ext/standard/tests/array/array_intersect_ukey_variation7.phpt b/ext/standard/tests/array/array_intersect_ukey_variation7.phpt
new file mode 100644
index 000000000..75b601c11
--- /dev/null
+++ b/ext/standard/tests/array/array_intersect_ukey_variation7.phpt
@@ -0,0 +1,63 @@
+--TEST--
+Test array_intersect_ukey() function : usage variation - Intersection of strings containing integer and float
+--FILE--
+<?php
+/* Prototype : array array_intersect_ukey(array arr1, array arr2 [, array ...], callback key_compare_func)
+ * Description: Computes the intersection of arrays using a callback function on the keys for comparison.
+ * Source code: ext/standard/array.c
+ */
+
+echo "*** Testing array_intersect_ukey() : usage variation ***\n";
+
+//Initialize variables
+$arr1_string_int = array('0' => '1', '1' => '2');
+$arr2_string_int = array('0' => '1', '1' => '3');
+$arr1_string_float = array('0.00' => '1.00', '1.00' => '2.00');
+$arr2_string_float = array('0.00' => '1.00', '1.00' => '3.00');
+
+//Call back function
+function key_compare_func($key1, $key2)
+{
+ if ($key1 == $key2)
+ return 0;
+ else
+ return ($key1 > $key2)? 1:-1;
+}
+
+echo "\n-- Result of strings containing integers intersection --\n";
+var_dump( array_intersect_ukey($arr1_string_int, $arr2_string_int, 'key_compare_func') );
+
+echo "\n-- Result of strings containing floating points intersection --\n";
+var_dump( array_intersect_ukey($arr1_string_float, $arr2_string_float, 'key_compare_func') );
+
+echo "\n-- Result of strings containing integers and strings containing floating points intersection --\n";
+var_dump( array_intersect_ukey($arr1_string_int, $arr2_string_float, 'key_compare_func') );
+?>
+===DONE===
+--EXPECTF--
+*** Testing array_intersect_ukey() : usage variation ***
+
+-- Result of strings containing integers intersection --
+array(2) {
+ [0]=>
+ string(1) "1"
+ [1]=>
+ string(1) "2"
+}
+
+-- Result of strings containing floating points intersection --
+array(2) {
+ ["0.00"]=>
+ string(4) "1.00"
+ ["1.00"]=>
+ string(4) "2.00"
+}
+
+-- Result of strings containing integers and strings containing floating points intersection --
+array(2) {
+ [0]=>
+ string(1) "1"
+ [1]=>
+ string(1) "2"
+}
+===DONE=== \ No newline at end of file