php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #21490 isset in an array
Submitted: 2003-01-07 07:53 UTC Modified: 2003-01-07 08:06 UTC
From: mickael dot bailly at free dot fr Assigned:
Status: Not a bug Package: Unknown/Other Function
PHP Version: 4.3.0 OS: Linux
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: mickael dot bailly at free dot fr
New email:
PHP Version: OS:

 

 [2003-01-07 07:53 UTC] mickael dot bailly at free dot fr
Don't know if it's a bug or a feature... :)

$test = array ('a' => 'coooool','b' => $ddfdfdf);
if ( isset($test['b']) ) {
	echo "OOOK ! \n";
}

echoes nothing, and

$test = array ('a' => 'coooool','b' => "$ddfdfdf");
if ( isset($test['b']) ) {
	echo "OOOK ! \n";
}
echoes OOOK

Is this normal ?

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2003-01-07 07:58 UTC] nicos@php.net
Yes it $ddfdfdf is empty, isset will return FALSE.

According to the following script :

<?php

$test = array ('a' => 'coooool','b' => "$tests");
if (isset($test['b']) ) {
echo "OK 1! \n";
}

$test = array ('a' => 'coooool','b' => $tests);
if ( isset($test['b']) ) {
echo "OK 2! \n";
}

$tests = "lol";

$test = array ('a' => 'coooool','b' => $tests);
if ( isset($test['b']) ) {
echo "OK 3! \n";
}

?>

That returns:

OK 1!
OK 3!

If you set an element of an array to a variable that is empty, isset will definatly return FALSE.

Excepted behaviour.
 [2003-01-07 08:06 UTC] nicos@php.net
Note:

$test = ""; sets the variable test to an empty string. 
So isset() will return TRUE. Since you're passing "$var" and $var is empty, it will be set to an empty string. 

That explains why it returns TRUE with "$var" and not with only $var.

Thank you for your report.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Wed Jul 03 20:01:29 2024 UTC