From: [EMAIL PROTECTED]
Operating system: Windows 2000 Pro
PHP version: 4.1.2
PHP Bug Type: Scripting Engine problem
Bug description: Must declare function before referencing when in the scope of an if
statement
if (1==1) {
if (1==2) {
echo 'blah';
}
else { test('test'); } <--RIGHT HERE
function test ($blah) {
echo $blah;
}
}
This script gives the error: Fatal error: Call to undefined function:
test() <line 6>.
PHP should have recognized that since the first if statement was true, all
functions in the scope of that if statement should be declared. If I move
the function declaration to before I use it, it works.
--
Edit bug report at http://bugs.php.net/?id=17055&edit=1
--
Fixed in CVS: http://bugs.php.net/fix.php?id=17055&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=17055&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=17055&r=needtrace
Try newer version: http://bugs.php.net/fix.php?id=17055&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=17055&r=support
Expected behavior: http://bugs.php.net/fix.php?id=17055&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=17055&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=17055&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=17055&r=globals