File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / Zend / tests / bug31098.phpt
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue May 29 12:34:36 2012 UTC (12 years, 10 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_3elwix, v5_4_29p0, v5_4_29, v5_4_20p0, v5_4_20, v5_4_17p0, v5_4_17, HEAD
php 5.4.3+patches

    1: --TEST--
    2: Bug #31098 (isset() / empty() incorrectly returns true in dereference of a wrong type)
    3: --FILE--
    4: <?php
    5: $a = '';
    6: var_dump(isset($a->b));
    7: $a = 'a';
    8: var_dump(isset($a->b));
    9: $a = '0';
   10: var_dump(isset($a->b));
   11: $a = '';
   12: var_dump(isset($a['b']));
   13: $a = 'a';
   14: var_dump(isset($a['b']));
   15: $a = '0';
   16: var_dump(isset($a['b']));
   17: 
   18: $simpleString = "Bogus String Text";
   19: echo isset($simpleString->wrong)?"bug\n":"ok\n";
   20: echo isset($simpleString["wrong"])?"bug\n":"ok\n";
   21: echo isset($simpleString[-1])?"bug\n":"ok\n";
   22: echo isset($simpleString[0])?"ok\n":"bug\n";
   23: echo isset($simpleString["0"])?"ok\n":"bug\n";
   24: echo isset($simpleString["16"])?"ok\n":"bug\n";
   25: echo isset($simpleString["17"])?"bug\n":"ok\n";
   26: echo $simpleString->wrong === null?"ok\n":"bug\n";
   27: echo $simpleString["wrong"] === "B"?"ok\n":"bug\n";
   28: echo $simpleString["0"] === "B"?"ok\n":"bug\n";
   29: $simpleString["wrong"] = "f";
   30: echo $simpleString["0"] === "f"?"ok\n":"bug\n";
   31: ?>
   32: --EXPECTF--
   33: bool(false)
   34: bool(false)
   35: bool(false)
   36: bool(false)
   37: bool(false)
   38: bool(false)
   39: ok
   40: ok
   41: ok
   42: ok
   43: ok
   44: ok
   45: ok
   46: 
   47: Notice: Trying to get property of non-object in %s on line %d
   48: ok
   49: 
   50: Warning: Illegal string offset 'wrong' in %s on line %d
   51: ok
   52: ok
   53: 
   54: Warning: Illegal string offset 'wrong' in %s on line %d
   55: ok

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