summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/array_fill_keys_variation2.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_fill_keys_variation2.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_fill_keys_variation2.phpt')
-rw-r--r--ext/standard/tests/array/array_fill_keys_variation2.phpt81
1 files changed, 81 insertions, 0 deletions
diff --git a/ext/standard/tests/array/array_fill_keys_variation2.phpt b/ext/standard/tests/array/array_fill_keys_variation2.phpt
new file mode 100644
index 0000000..4f3681a
--- /dev/null
+++ b/ext/standard/tests/array/array_fill_keys_variation2.phpt
@@ -0,0 +1,81 @@
+--TEST--
+Test array_fill_keys() function : variation of parameter
+--FILE--
+<?php
+/* Prototype : proto array array_fill_keys(array keys, mixed val)
+ * Description: Create an array using the elements of the first parameter as keys each initialized to val
+ * Source code: ext/standard/array.c
+ * Alias to functions:
+ */
+
+/* Testing with reference types for the arguments */
+
+echo "*** Testing array_fill_keys() : parameter variations ***\n";
+
+$nullVal = null;
+$simpleStr = "simple";
+$refString = &$simpleStr;
+$fp = fopen(__FILE__, "r");
+$emptyArr = array();
+$bool = false;
+$float = 2.4;
+
+class classA {
+ public function __toString() { return "Class A object"; }
+}
+$obj = new classA();
+
+
+echo "\n-- Testing array_fill_keys() function with reference value --\n";
+$keyedArray = array("one", "two");
+var_dump(array_fill_keys($keyedArray, $refString));
+
+echo "\n-- Testing array_fill_keys() function with reference keys --\n";
+$refKeys = array("one", &$simpleStr);
+$res = array_fill_keys($refKeys, $simpleStr);
+var_dump($res);
+$simpleStr = "bob";
+var_dump($res);
+
+
+echo "\n-- Testing array_fill_keys() function with reference array input --\n";
+$newArray = array("one", "two");
+$refArray = &$newArray;
+var_dump(array_fill_keys($refArray, $simpleStr));
+
+fclose($fp);
+echo "Done";
+?>
+--EXPECTF--
+*** Testing array_fill_keys() : parameter variations ***
+
+-- Testing array_fill_keys() function with reference value --
+array(2) {
+ ["one"]=>
+ string(6) "simple"
+ ["two"]=>
+ string(6) "simple"
+}
+
+-- Testing array_fill_keys() function with reference keys --
+array(2) {
+ ["one"]=>
+ string(6) "simple"
+ ["simple"]=>
+ string(6) "simple"
+}
+array(2) {
+ ["one"]=>
+ string(6) "simple"
+ ["simple"]=>
+ string(6) "simple"
+}
+
+-- Testing array_fill_keys() function with reference array input --
+array(2) {
+ ["one"]=>
+ string(3) "bob"
+ ["two"]=>
+ string(3) "bob"
+}
+Done \ No newline at end of file