ID: 15678
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
-Status: Open
+Status: Critical
Bug Type: Variables related
Operating System: i686-pc-linux-gnu
PHP Version: 4.0CVS-2002-02-2
New Comment:
This is critical bug in any cases.
isset() must not return FALSE when value is not set. This is enough to
be a critical bug.
This bug is not only hard to find, but also can make security hole in
script. Don't you have script relys on isset() to grant access? (Well,
I don't have actually since I like everything to be explicit, but some
users will have)
Previous Comments:
------------------------------------------------------------------------
[2002-02-27 07:24:00] [EMAIL PROTECTED]
not critical
------------------------------------------------------------------------
[2002-02-23 22:59:43] [EMAIL PROTECTED]
It should be fixed before 4.2.0 at least.
Hopefully before 4.1.2 :)
------------------------------------------------------------------------
[2002-02-22 11:41:57] [EMAIL PROTECTED]
Btw, this has nothing to do with current CVS. This applies to at least
4.1.0 I tested (so there's nothing broken since current stable and CVS;
if it's broken, it is for a long time)
------------------------------------------------------------------------
[2002-02-22 11:17:03] [EMAIL PROTECTED]
Andrey Hristov wrote:
>The answer to your question:
><?php
> var_dump((int) 'y');
>?>
???
this is not the answer of the second question and also not to the first
one, because
<?php
$c['c']='Hallo';
echo $c[0];
?>
results:
"Notice: Undefined offset: 0 in foo.php on line 2"
------------------------------------------------------------------------
[2002-02-22 11:03:55] [EMAIL PROTECTED]
hi,
the declaration of a second dimension in a normal array results
a strange array content.
<?php
$x['c']='foo';
$x['c']['d']='bar';
print_r($x);
?>
results:
Array
(
[c] => boo
)
is this a normal behavior?
i think this ist completely wrong, because 'd' is not string position
1.
Also a normal condition like
<?php
$x['c']='foo';
if (isset($x['c']['y'])) echo 'yep';
else echo 'no';
?>
results true ... but it is absolutely not true
i have test it on linux with the lastest cvs tree php version.
regards,
Steve
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=15678&edit=1