Annotation of embedaddon/php/ext/standard/tests/array/key_exists_variation2.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test function key_exists() by calling it with its expected arguments
                      3: --CREDITS--
                      4: Francesco Fullone ff@ideato.it
                      5: #PHPTestFest Cesena Italia on 2009-06-20
                      6: --FILE--
                      7: <?php
                      8: echo "*** test key_exists() by using mixed type of arrays ***\n";
                      9: 
                     10: // there is not a index = 0 element
                     11: $a = array(1 => 'bar', 'foo' => 'baz');  
                     12: var_dump(key_exists(0, $a));
                     13: 
                     14: echo "integer\n";
                     15: // 1 has index = 0
                     16: $b = array(1, 'foo' => 'baz');  
                     17: var_dump(key_exists(0, $b));
                     18: 
                     19: // 42 has index = 0, netherless its position is the latest
                     20: $c = array('foo' => 'baz', 42);  
                     21: var_dump(key_exists(0, $c));
                     22: 
                     23: echo "string\n";
                     24: // 'bar' has index = 0, netherless it is a string
                     25: $d = array('bar', 'foo' => 'baz');  
                     26: var_dump(key_exists(0, $d));
                     27: 
                     28: // 'baz' has index = 0, netherless its position is the latest
                     29: $e = array('foo' => 'baz', 'baz');  
                     30: var_dump(key_exists(0, $e));
                     31: 
                     32: echo "obj\n";
                     33: class ObjectA
                     34: {
                     35:   public $foo = 'bar';
                     36: }
                     37: 
                     38: $obj = new ObjectA();
                     39: 
                     40: // object has index = 0, netherless its position is the latest
                     41: $f = array('foo' => 'baz', $obj);  
                     42: var_dump(key_exists(0, $f));
                     43: 
                     44: // object has index = 0, netherless its position is the first
                     45: $g = array($obj, 'foo' => 'baz');  
                     46: var_dump(key_exists(0, $g));
                     47: 
                     48: echo "stream resource\n";
                     49: // stream resource has index = 0, netherless its position is the first
                     50: $st = fopen('php://memory', '+r');
                     51: $h = array($st, 'foo' => 'baz');  
                     52: var_dump(key_exists(0, $h));
                     53: 
                     54: // stream resource has index = 0, netherless its position is the latest
                     55: $i = array('foo' => 'baz', $st);  
                     56: var_dump(key_exists(0, $i));
                     57: 
                     58: --EXPECTF--
                     59: *** test key_exists() by using mixed type of arrays ***
                     60: bool(false)
                     61: integer
                     62: bool(true)
                     63: bool(true)
                     64: string
                     65: bool(true)
                     66: bool(true)
                     67: obj
                     68: bool(true)
                     69: bool(true)
                     70: stream resource
                     71: bool(true)
                     72: bool(true)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>