ID: 50255 User updated by: tyra3l at gmail dot com Reported By: tyra3l at gmail dot com Status: Bogus Bug Type: *General Issues Operating System: windows xp PHP Version: 5.3.1 New Comment:
could you show me which ticket duplicates this, and where this behavior is documented in the manual? because I tried to check this in the documentation, but I haven't found it at the isset/empty manual page. Tyrael Previous Comments: ------------------------------------------------------------------------ [2009-11-21 15:00:19] j...@php.net Please do not submit the same bug more than once. An existing bug report already describes this very problem. Even if you feel that your issue is somewhat different, the resolution is likely to be the same. Thank you for your interest in PHP. And expected behaviour. RTFM. etc. ------------------------------------------------------------------------ [2009-11-21 10:08:26] tyra3l at gmail dot com Description: ------------ If you try to check the existence of a property on an array, suprisingly you wont get any error or notice, but you will get the results as you were checking with the correct type. Reproduce code: --------------- <?php $a = array('foo' => 'bar'); echo "<pre>";var_dump(isset($a->foo));echo "</pre>"; echo "<pre>";var_dump(isset($a->asd));echo "</pre>"; echo "<pre>";var_dump(empty($a->foo));echo "</pre>"; echo "<pre>";var_dump(empty($a->asd));echo "</pre>"; echo "<pre>";var_dump(@$a->foo);echo "</pre>"; Expected result: ---------------- Fatal error: Cannot use array as object in ... OR bool(false) bool(false) bool(true) bool(true) NULL Actual result: -------------- bool(true) bool(false) bool(false) bool(true) NULL ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=50255&edit=1