summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/array_unique_variation6.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/array/array_unique_variation6.phpt')
-rw-r--r--ext/standard/tests/array/array_unique_variation6.phpt44
1 files changed, 44 insertions, 0 deletions
diff --git a/ext/standard/tests/array/array_unique_variation6.phpt b/ext/standard/tests/array/array_unique_variation6.phpt
new file mode 100644
index 0000000..82442bd
--- /dev/null
+++ b/ext/standard/tests/array/array_unique_variation6.phpt
@@ -0,0 +1,44 @@
+--TEST--
+Test array_unique() function : usage variations - array with reference variables
+--FILE--
+<?php
+/* Prototype : array array_unique(array $input)
+ * Description: Removes duplicate values from array
+ * Source code: ext/standard/array.c
+*/
+
+/*
+ * Testing the functionality of array_unique() by passing
+ * array having reference variables as values.
+*/
+
+echo "*** Testing array_unique() : array with reference variables for \$input argument ***\n";
+
+$value1 = 10;
+$value2 = "hello";
+$value3 = 0;
+$value4 = &$value2;
+
+// input array containing elements as reference variables
+$input = array(
+ 0 => 0,
+ 1 => &$value4,
+ 2 => &$value2,
+ 3 => "hello",
+ 4 => &$value3,
+ 5 => $value4
+);
+
+var_dump( array_unique($input, SORT_STRING) );
+
+echo "Done";
+?>
+--EXPECTF--
+*** Testing array_unique() : array with reference variables for $input argument ***
+array(2) {
+ [0]=>
+ int(0)
+ [1]=>
+ &%unicode|string%(5) "hello"
+}
+Done