summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/array_change_key_case_variation7.phpt
diff options
context:
space:
mode:
authorMark A. Hershberger <mah@debian.(none)>2009-03-25 00:39:08 -0400
committerMark A. Hershberger <mah@debian.(none)>2009-03-25 00:39:08 -0400
commit993e1866df547532a05ab6db76c9ff5aefc9a3df (patch)
tree169d3bde0974235d3cde164786ef6f381a4749a7 /ext/standard/tests/array/array_change_key_case_variation7.phpt
parent1f589a2bd44ba835ad1b009a5d83abd453724829 (diff)
downloadphp-upstream/5.2.6.tar.gz
Imported Upstream version 5.2.6upstream/5.2.6
Diffstat (limited to 'ext/standard/tests/array/array_change_key_case_variation7.phpt')
-rw-r--r--ext/standard/tests/array/array_change_key_case_variation7.phpt91
1 files changed, 91 insertions, 0 deletions
diff --git a/ext/standard/tests/array/array_change_key_case_variation7.phpt b/ext/standard/tests/array/array_change_key_case_variation7.phpt
new file mode 100644
index 000000000..173a7ec4d
--- /dev/null
+++ b/ext/standard/tests/array/array_change_key_case_variation7.phpt
@@ -0,0 +1,91 @@
+--TEST--
+Test array_change_key_case() function : usage variations - referenced variables
+--INI--
+allow_call_time_pass_reference=on
+--FILE--
+<?php
+/* Prototype : array array_change_key_case(array $input [, int $case])
+ * Description: Retuns an array with all string keys lowercased [or uppercased]
+ * Source code: ext/standard/array.c
+ */
+
+/*
+ * Test array_change_key_case() when:
+ * 1. Passed a referenced variable
+ * 2. Passed an argument by reference
+ */
+
+echo "*** Testing array_change_key_case() : usage variations ***\n";
+
+$input = array('one' => 1, 'two' => 2, 'ABC' => 'xyz');
+
+echo "\n-- \$input argument is a reference to array --\n";
+$new_input = &$input;
+echo "Result:\n";
+var_dump(array_change_key_case($new_input, CASE_UPPER));
+echo "Original:\n";
+var_dump($input);
+echo "Referenced:\n";
+var_dump($new_input);
+
+echo "\n-- \$input is an array passed by reference --\n";
+echo "Result:\n";
+var_dump(array_change_key_case(&$input, CASE_UPPER));
+echo "Original:\n";
+var_dump($input);
+
+echo "Done";
+?>
+
+--EXPECTF--
+*** Testing array_change_key_case() : usage variations ***
+
+-- $input argument is a reference to array --
+Result:
+array(3) {
+ ["ONE"]=>
+ int(1)
+ ["TWO"]=>
+ int(2)
+ ["ABC"]=>
+ string(3) "xyz"
+}
+Original:
+array(3) {
+ ["one"]=>
+ int(1)
+ ["two"]=>
+ int(2)
+ ["ABC"]=>
+ string(3) "xyz"
+}
+Referenced:
+array(3) {
+ ["one"]=>
+ int(1)
+ ["two"]=>
+ int(2)
+ ["ABC"]=>
+ string(3) "xyz"
+}
+
+-- $input is an array passed by reference --
+Result:
+array(3) {
+ ["ONE"]=>
+ int(1)
+ ["TWO"]=>
+ int(2)
+ ["ABC"]=>
+ string(3) "xyz"
+}
+Original:
+array(3) {
+ ["one"]=>
+ int(1)
+ ["two"]=>
+ int(2)
+ ["ABC"]=>
+ string(3) "xyz"
+}
+Done