summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/array_merge_variation10.phpt
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2013-03-14 05:42:27 +0000
committer <>2013-04-03 16:25:08 +0000
commitc4dd7a1a684490673e25aaf4fabec5df138854c4 (patch)
tree4d57c44caae4480efff02b90b9be86f44bf25409 /ext/standard/tests/array/array_merge_variation10.phpt
downloadphp2-master.tar.gz
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/standard/tests/array/array_merge_variation10.phpt')
-rw-r--r--ext/standard/tests/array/array_merge_variation10.phpt70
1 files changed, 70 insertions, 0 deletions
diff --git a/ext/standard/tests/array/array_merge_variation10.phpt b/ext/standard/tests/array/array_merge_variation10.phpt
new file mode 100644
index 0000000..7f08a4b
--- /dev/null
+++ b/ext/standard/tests/array/array_merge_variation10.phpt
@@ -0,0 +1,70 @@
+--TEST--
+Test array_merge() function : usage variations - position of internal array pointer
+--FILE--
+<?php
+/* Prototype : array array_merge(array $arr1, array $arr2 [, array $...])
+ * Description: Merges elements from passed arrays into one array
+ * Source code: ext/standard/array.c
+ */
+
+/*
+ * Check the position of the internal array pointer after calling array_merge().
+ * This test is also passing more than two arguments to array_merge().
+ */
+
+echo "*** Testing array_merge() : usage variations ***\n";
+
+$arr1 = array ('zero', 'one', 'two');
+$arr2 = array ('zero', 'un', 'deux');
+$arr3 = array ('null', 'eins', 'zwei');
+
+echo "\n-- Call array_merge() --\n";
+var_dump($result = array_merge($arr1, $arr2, $arr3));
+
+echo "\n-- Position of Internal Pointer in Result: --\n";
+echo key($result) . " => " . current($result) . "\n";
+
+echo "\n-- Position of Internal Pointer in Original Array: --\n";
+echo "\$arr1: ";
+echo key($arr1) . " => " . current ($arr1) . "\n";
+echo "\$arr2: ";
+echo key($arr2) . " => " . current ($arr2) . "\n";
+echo "\$arr3: ";
+echo key($arr3) . " => " . current ($arr3) . "\n";
+
+echo "Done";
+?>
+
+--EXPECTF--
+*** Testing array_merge() : usage variations ***
+
+-- Call array_merge() --
+array(9) {
+ [0]=>
+ string(4) "zero"
+ [1]=>
+ string(3) "one"
+ [2]=>
+ string(3) "two"
+ [3]=>
+ string(4) "zero"
+ [4]=>
+ string(2) "un"
+ [5]=>
+ string(4) "deux"
+ [6]=>
+ string(4) "null"
+ [7]=>
+ string(4) "eins"
+ [8]=>
+ string(4) "zwei"
+}
+
+-- Position of Internal Pointer in Result: --
+0 => zero
+
+-- Position of Internal Pointer in Original Array: --
+$arr1: 0 => zero
+$arr2: 0 => zero
+$arr3: 0 => null
+Done \ No newline at end of file