Date: 01/08/01
- Next message: Alex Black: "Re: [PHP-DEV] PHP 4.0 Bug #8425 Updated: PHP crashes if I include a page that uses xml parser."
- Previous message: lsimon <email protected>: "[PHP-DEV] PHP 4.0 Bug #8598 Updated: get_browser crashing"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
ID: 8565
Updated by: stas
Reported By: jalal <email protected>
Old-Status: Open
Status: Analyzed
Bug Type: Scripting Engine problem
Assigned To:
Comments:
The reason for this is simple - parent:: is the compile-time
definition and require/include is run-time, so when it meets
parent:: it does not know yet who it's parent is. I am not
sure it's resolvable now, but I'm leaving it for Zeev/Andi's
attention.
Previous Comments:
---------------------------------------------------------------------------
[2001-01-08 10:00:11] hholzgra <email protected>
it will work if you include/require/require_once both
.inc files from the file but not for nested includes
(extended class including base class to be extended)
:(
---------------------------------------------------------------------------
[2001-01-05 14:37:23] jalal <email protected>
The following code gives the error:
file: base.inc
<?php
class Base {
function Base(){}
function doit() {
echo "Class Base->doit()n";
}
}
?>
file: a.inc
<?php
include("base.inc");
class A extends Base {
function A(){}
function doit() {
parent::doit();
echo "Class A->doit()n";
}
}
?>
file: extend-test.php
<?php
include("a.inc");
$a = new A();
$a->doit();
?>
x:>php -f extend-test.php
Fatal error: No parent class available in this context in a.inc on line 6
---------------------------------------------------------------------------
[2001-01-05 12:42:19] hholzgra <email protected>
sorry, but i can't believe this as i
use this feature almost daily
can you pleas provide an example of
code _not_ working ?
---------------------------------------------------------------------------
[2001-01-05 12:22:36] jalal <email protected>
the parent:: operator will work if both the parent and sub class are in the same physical file, but not if they are in a separate file.
This works:
<?php
class Base {
function doit() {
echo "Class Base->doit()n";
}
}
class A extends Base {
function doit() {
parent::doit();
echo "Class A->doit()n";
}
}
?>
but if the two classes are in separate files, the following error is reported:
Fatal error: No parent class available in this context in a.inc on line 6
Of course, this may be an undocumented feature, but I can see no reason for it.
---------------------------------------------------------------------------
Full Bug description available at: http://bugs.php.net/?id=8565
-- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: php-dev-unsubscribe <email protected> For additional commands, e-mail: php-dev-help <email protected> To contact the list administrators, e-mail: php-list-admin <email protected>
- Next message: Alex Black: "Re: [PHP-DEV] PHP 4.0 Bug #8425 Updated: PHP crashes if I include a page that uses xml parser."
- Previous message: lsimon <email protected>: "[PHP-DEV] PHP 4.0 Bug #8598 Updated: get_browser crashing"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

