ID: 27440 Updated by: [EMAIL PROTECTED] Reported By: holliwell at gmx dot net -Status: Assigned +Status: Closed Bug Type: Documentation problem Operating System: linux 2.4.20 RH8 PHP Version: 5CVS-2004-02-29 (dev) Assigned To: nlopess New Comment:
This bug has been fixed in the documentation's XML sources. Since the online and downloadable versions of the documentation need some time to get updated, we would like to ask you to be a bit patient. Thank you for the report, and for helping us make our documentation better. Previous Comments: ------------------------------------------------------------------------ [2004-04-19 17:36:31] [EMAIL PROTECTED] that information was true when I've wroten this appendice. When I update the appendice, I'll fix this bug. ------------------------------------------------------------------------ [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. ------------------------------------------------------------------------ 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
