ID: 27440 Updated by: [EMAIL PROTECTED] Reported By: holliwell at gmx dot net -Status: Open +Status: Assigned Bug Type: Documentation problem Operating System: linux 2.4.20 RH8 PHP Version: 5CVS-2004-02-29 (dev) -Assigned To: +Assigned To: nlopess New Comment:
that information was true when I've wroten this appendice. When I update the appendice, I'll fix this bug. Previous Comments: ------------------------------------------------------------------------ [2004-04-19 17:13:50] [EMAIL PROTECTED] Nuno, it seems you have following in mind: http://de3.php.net/manual/de/migration5.incompatible.php <qoute> The following example was valid in PHP 4, although it will produce a fatal error in PHP 5. Beispiel B-3. Classes must be declared before used <?php $test = new fubar(); $test->barfu(); class fubar { function barfu() { echo 'fubar'; } } ?> </qoute> No fatal error is produced, it is just the same thing as in PHP 4. It may be bad practice, but it is still possible without any error, not even a warning rinning E_STRICT enabled. At least declare before usage is good practice, but in some cases not mandatory. So the docs are wrong. Regards Friedhelm ------------------------------------------------------------------------ [2004-04-19 17:02:57] [EMAIL PROTECTED] This is already stated in the migration chapter a long time ago. ------------------------------------------------------------------------ [2004-03-09 19:58:55] holliwell at gmx dot net Iliaa, I did not get your point, sorry! 1.) In php5 its possible to do $c = new someclass , before someclass is defined, _without_ throwing an error. 2.) Wich error are you talking about: <qoute> since at the time the error is generated </qoute> 3.) be gentle ;-) and do not mark this bogus, at least a doc bug. Or change README.PHP4-TO-PHP5-THIN-CHANGES to reflect the current behaviour (which is not throwing an error in this case.) 4.) AFAIK at some stage of php5 using a class before declaring was throwing an fatal error. This was changed because of bc. So why should it be not possible in E_STRICT mode to throw a warning? Kind regards Friedhelm ------------------------------------------------------------------------ [2004-03-09 19:10:10] [EMAIL PROTECTED] Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php In this case raising E_STRICT is not possible since at the time the error is generated the parser does not know if the class will be declared at a later point. This is just one of the PHP 5 <-> 4 incompatibilities that will need to be documented. ------------------------------------------------------------------------ [2004-02-29 18:53:11] holliwell at gmx dot net yup, so what about at least issue a warning with E_STRICT? ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/27440 -- Edit this bug report at http://bugs.php.net/?id=27440&edit=1
