[PHP-DEV] PHP 4.0 Bug #7626 Updated: session saving and loading seem to use different locales From: sniper <email protected>
Date: 12/15/00

ID: 7626
Updated by: sniper
Reported By: cstrebin <email protected>
Old-Status: Analyzed
Status: Feedback
Bug Type: *General Issues
Assigned To:
Comments:

Please try the latest snapshot from http://snaps.php.net/

--Jani

Previous Comments:
---------------------------------------------------------------------------

[2000-11-05 06:14:03] stas <email protected>
Serializer uses locale-sensitive sprintf for doubles, which it probably should not.

---------------------------------------------------------------------------

[2000-11-03 12:19:27] cstrebin <email protected>
My LANG environment variable is "german". At the beginning of every page, I do `setLocale('LC_ALL', 'en_US')'. With those settings, float session variables are saved with `,' as decimal point, but loading seems to expect `.' so that I get values truncated to ints.

Example script:
<?
setLocale('LC_ALL', 'en_US');
session_start();
$x = & $HTTP_SESSION_VARS['x'];
if (!isset($x)) $x = 1;
$x *= '1.1';
print("$x<br>n");
printf("<a href="%s">go</a>n", $HTTP_SERVER_VARS['PHP_SELF']);
// (link relies on transparent sid)
?>

The session file contains `x|d:1,1;', and the page always shows `1.1', since the loaded value becomes 1.

---------------------------------------------------------------------------

Full Bug description available at: http://bugs.php.net/?id=7626

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>