Annotation of embedaddon/php/Zend/tests/bug44899.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #44899 (__isset usage changes behavior of empty())
                      3: --FILE--
                      4: <?php
                      5: 
                      6: class myclass
                      7: {
                      8:        private $_data = array();
                      9: 
                     10:        function __construct($data)
                     11:        {
                     12:                $this->_data = $data;
                     13:        }
                     14: 
                     15:        function __isset($field_name)
                     16:        {
                     17:                return isset($this->_data[$field_name]);
                     18:        }
                     19: }
                     20: 
                     21: $arr = array('foo' => '');
                     22: 
                     23: $myclass = new myclass($arr) ;
                     24: 
                     25: echo (isset($myclass->foo)) ? 'isset' : 'not isset';
                     26: echo "\n";
                     27: echo (empty($myclass->foo)) ? 'empty' : 'not empty';
                     28: echo "\n";
                     29: echo ($myclass->foo) ? 'not empty' : 'empty';
                     30: echo "\n";
                     31: 
                     32: ?>
                     33: --EXPECTF--
                     34: isset
                     35: empty
                     36: 
                     37: Notice: Undefined property: myclass::$foo in %s on line %d
                     38: empty

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