#26760 [Opn]: conditional class declartion causes syntax error
| From: | derick@php.net | Date: | Fri, 02 Jan 2004 10:56:40 +0000 |
| Subject: | #26760 [Opn]: conditional class declartion causes syntax error | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-52705@lists.php.net to get a copy of this message | ||
ID: 26760
Updated by: derick@php.net
Reported By: eero at volotinen dot com
Status: Open
Bug Type: Unknown/Other Function
Operating System: linux 2.6
PHP Version: 5CVS-2004-01-01 (dev)
New Comment:
I don't think that anything is broken here. You just can't have a
conditional class definition (just like you can't instantiate a class
before it's declared anymore).
Previous Comments:
------------------------------------------------------------------------
[2004-01-02 05:26:04] alan_k@php.net
Changing title.
I suspect marcus's fix broke this.
http://news.php.net/article.php?group=php.zend-engine.cvs&article=2159
------------------------------------------------------------------------
[2004-01-02 05:07:53] eero at volotinen dot com
Used this test script:
<?php
if(!defined("SQL_LAYER"))
{
define("SQL_LAYER","mysql");
class sql_db
{
var $test;
}
} // end if..
?>
Php reports error at line 7 which starts :
class sql_db ..
------------------------------------------------------------------------
[2004-01-02 05:00:30] alan_k@php.net
can you test the simple script below.. - line 27 appears to be the
class definition line.
test it with php -l test.php
(eg. syntax test it.)
.. if this works, go back to the mysql.php file, and remove chunks.
(eg. methods) and syntax test it - narrowing down the problem.
<?php
if(!defined("SQL_LAYER"))
{
define("SQL_LAYER","mysql");
class sql_db
{
var $test;
}
} // end if..
------------------------------------------------------------------------
[2004-01-02 04:53:03] eero at volotinen dot com
[02-Jan-2004 09:19:12] PHP Parse error: parse error in
/home/apache/www/forum/phpBB2/db/mysql.php on line 27
[02-Jan-2004 09:19:12] PHP Fatal error: Class 'sql_db' not found in
/home/apache/www/forum/phpBB2/includes/db.php on line 60
Both files can be found from :
http://www.linux.ncp.fi/~eero/php_error/
I think problem was started on a few days builds.
------------------------------------------------------------------------
[2004-01-02 02:28:57] alan_k@php.net
Thank you for this bug report. To properly diagnose the problem, we
need a short but complete example script to be able to reproduce
this bug ourselves.
A proper reproducing script starts with <?php and ends with ?>,
is max. 10-20 lines long and does not require any external
resources such as databases, etc.
If possible, make the script source available online and provide
an URL to it here. Try avoid embedding huge scripts into the report.
please look at detail what is causing the problem. - or contact the
support resources. www.php.net/support
------------------------------------------------------------------------
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/26760
--
Edit this bug report at http://bugs.php.net/?id=26760&edit=1