summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/array_key_exists_variation4.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_key_exists_variation4.phpt
parent1f589a2bd44ba835ad1b009a5d83abd453724829 (diff)
downloadphp-993e1866df547532a05ab6db76c9ff5aefc9a3df.tar.gz
Imported Upstream version 5.2.6upstream/5.2.6
Diffstat (limited to 'ext/standard/tests/array/array_key_exists_variation4.phpt')
-rw-r--r--ext/standard/tests/array/array_key_exists_variation4.phpt46
1 files changed, 46 insertions, 0 deletions
diff --git a/ext/standard/tests/array/array_key_exists_variation4.phpt b/ext/standard/tests/array/array_key_exists_variation4.phpt
new file mode 100644
index 000000000..edc39269a
--- /dev/null
+++ b/ext/standard/tests/array/array_key_exists_variation4.phpt
@@ -0,0 +1,46 @@
+--TEST--
+Test array_key_exists() function : usage variations - referenced variables
+--INI--
+allow_call_time_pass_reference=on
+--FILE--
+<?php
+/* Prototype : bool array_key_exists(mixed $key, array $search)
+ * Description: Checks if the given key or index exists in the array
+ * Source code: ext/standard/array.c
+ * Alias to functions: key_exists
+ */
+
+/*
+ * Pass referenced variables as arguments to array_key_exists() to test behaviour
+ */
+
+echo "*** Testing array_key_exists() : usage variations ***\n";
+
+$array = array('one' => 1, 'two' => 2, 'three' => 3);
+
+echo "\n-- \$search is a reference to \$array --\n";
+$search = &$array;
+var_dump(array_key_exists('one', $search));
+
+echo "\n-- \$key is a referenced variable --\n";
+$key = 'two';
+var_dump(array_key_exists(&$key, $array));
+
+echo "\n-- Both arguments are referenced variables --\n";
+var_dump(array_key_exists(&$key, &$array));
+
+echo "Done";
+?>
+
+--EXPECTF--
+*** Testing array_key_exists() : usage variations ***
+
+-- $search is a reference to $array --
+bool(true)
+
+-- $key is a referenced variable --
+bool(true)
+
+-- Both arguments are referenced variables --
+bool(true)
+Done