php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #30360 empty string evaluates to string(0) php4.3.4 to string(1) in 5.0.2
Submitted: 2004-10-08 11:52 UTC Modified: 2004-10-08 12:29 UTC
From: daniel at spector dot ie Assigned:
Status: Not a bug Package: Strings related
PHP Version: 5.0.2 OS: Win2K
Private report: No CVE-ID: None
 [2004-10-08 11:52 UTC] daniel at spector dot ie
Description:
------------
PHP4.3.4 to PHP5.0.2 empty('') string evaluates to 
string(0) on 4.3.4(x?) and string(1) on php5.0.2. Can be
reproduced with code below.

Thanks alot in advance.

Reproduce code:
---------------
//an empty string
$suffix='';
var_dump($suffix);
$msg = (empty($suffix)) ? 'php4' : 'php5';
echo $msg;
/*
* on php4 var_dump returns string(0) msg returns php4
* on php5 var_dump returns string(1) msg returns php5
*/


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2004-10-08 11:58 UTC] derick@php.net
Works fine here:

derick@kossu:~$ php-5.0dev

<?php
$s = '';
var_dump($s);
?>
string(0) ""

 [2004-10-08 11:58 UTC] aidan@php.net
Sorry, but your problem does not imply a bug in PHP itself.  For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system is not the
appropriate forum for asking support questions. 

Thank you for your interest in PHP.

$ php -r '$suffix = ""; var_dump($suffix);'
string(0) ""
$ php -v
PHP 5.0.2-dev (cli) (built: Aug 26 2004 21:55:42)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.2-dev, Copyright (c) 1998-2004 Zend Technologies

Doesn't happen for me on linux.

<?php
$suffix = '';
var_dump($suffix);
?>

Doesn't happen for me on windows either.

In both cases empty returns true.
 [2004-10-08 12:29 UTC] daniel at spector dot ie
Hm. Sorry for the hasty bug report, should have dug deeper, thanks for the super prompt response. Reproduce code in fact works for me... as you say.

'Bug' is in fact a 'feature' introduced in 4.3.4 (Bug #25777) as per the 4.3.4 change log and rtrimming fields returned by MSSQL.

Codearound for me looks like.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Apr 16 11:01:29 2024 UTC