|
|
|
|
class First
{
var $name = "первый класс<br>";
function get_name()
{
return $this->name;
}
}
//Объвл второй класс
class Second
{
var $name = "второй класс<br>";
function print_name()
{
return $this->name;
}
}
//Объявляем функцию для работы с классами First and Second
function work($obj)
{
$str = get_class($obj);
if($str = "First") { echo $obj->get_name(); }
if($str = "Second") { echo $obj->print_name();}
}
//Объявляем объекты класса
$first_object = new First;
$secont_object = new Second;
//передаем объекты в качестве параметра функции
work($first_object);
work($second_object);
|
Ругается на эту строку if($str = "Second") { echo $obj->print_name();}
Fatal error: Call to undefined method First::print_name() in W:\www\php\page6.php on line 24
Код из книги Самоучитель
Помогите плиз! | |
|
|
|
|
|
|
|
для: spyder
(25.01.2006 в 13:29)
| | А у вас в классе First нет метода print_name(). | |
|
|
|
|
|
|
|
для: cheops
(25.01.2006 в 13:32)
| | А как исправить? | |
|
|
|
|
|
|
|
для: spyder
(25.01.2006 в 13:45)
| | Смените когструкцию на
if($str == "First"){
}elseif($str == "Second"){
}
должен пропустить такой код. | |
|
|
|
|
|
|
|
для: spyder
(25.01.2006 в 13:45)
| | == операция сравнения, = присвоения и всегда true | |
|
|
|