Thanks for the advice! I understand the problem now. I think they added
the Uninitialized
string offset in Version 4.1.0 (see
<http://www.php.net/ChangeLog-4.php>). That's why I didn't get this
warning before. Anyway, I think I'll just add a "@" sign to suppress
warnings. I tried it last nights and it works.

Uri.
--------------------------------------------------------

Richard Lynch wrote:
> 
> >After upgrading to Red Hat Linux 7.3 (which also includes a new PHP
> >version), I saw this warning (Uninitialized string offset) on my apache
> >error log files. It refers to a line which was perfectly legal before:
> 
> The new settings in php.ini are error_reporting E_ALL by default.
> 
> Those errors have always been there, have always been generated, and you've
> been "ignoring" them.
> 
> >   if
> >(isset($GLOBALS['SPEEDY_GLOBAL_VARS']['CURRENT_USER']['UserName']))
> >
> >I always use isset to check if a variable is defined. Do you know why I
> >get this warning?
> 
> Best Guess:
> 
> PHP is only checking if the *LAST* array reference "isset" -- and to do
> that, *has* to assume that the others are there -- IE, that
> $GLOBALS['SPEEDY_GLOBAL_VARS']['CURRENT_USER'] is set...
> 
> Change it to this:
> 
> if (isset($GLOBALS['SPEEDY_GLOBAL_VARS'] &&
> $GLOBALS['SPEEDY_GLOBAL_VARS']['CURRENT_USER'] &&
> $GLOBALS['SPEEDY_GLOBAL_VARS']['CURRENT_USER']['UserName']){
> 
> --
> Like Music?  http://l-i-e.com/artists.htm

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

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to