2009-09-27 5 views
1

Я хотел бы знать, если есть в любом случае я могу сделать родительский объект PHP, я попытался это:Php, как сделать родительский объект

new parent::__construct($var); 

, но он не работает, и я получаю следующее сообщение об ошибке в журнале PHP:

(..) PHP Анализировать ошибка: синтаксическая ошибка, неожиданный T_STRING, ожидая T_VARIABLE или '$' (..)

ответ

1

Просто вызовите конструктор родительского класса, как:

$parentClassObject = new ParentClassName(); 

Использование родительского :: __ конструкт() для вызова конструктора родительского класса, так как это не выполняется автоматически в PHP.

1

Это может работать:

$parentClass = get_parent_class(); 
$parentObject = new $parentClass(); 
4

см http://uk.php.net/get_parent_class

<?php 
class Foo { 

} 

class Bar extends Foo { 
    protected $p; 

    public function __construct() { 
    $pc = get_parent_class(); 
    $this->p = new $pc; 
    } 
} 

$bar = new Bar; 
var_dump($bar); 

(Но почему-то я не понимаю, почему вам нужно будет что-то подобное. Но, возможно, это только мне .... ;-))

+0

+1 - Я не знал об этой функции. – nickf

+2

Меня нет, но эй, это php. «Я хочу получить родительский класс» -> http://php.net/get_parent_class taadaa ... ;-D – VolkerK

Смежные вопросы