@jef0
Web-developer

В чем проблема?

Изучаю PHP, и вот возникла проблема:

Есть 2 файла: index.php и theme/index.php

Вот содержание index.php

<?php
require_once 'theme/index.php';
Header::create()->AddLink();
?>


И theme/index.php

<?php
<?php
Class Header
{
public static function create()
{
echo file_get_contents('theme/header.html');
}

public function AddLink($text,$url)
{
echo ''.$text.'';
}
}
?>


И при выполнении index.php вылазит ошибка:


Fatal error: Call to a member function AddLink() on a non-object in .../index.php on line 3
  • Вопрос задан
  • 157 просмотров
Решения вопроса 2
Такая
Header::create()->AddLink();
запись сработает, если сreate() вернет new Header();
Ответ написан
Комментировать
BuriK666
@BuriK666
Компьютерный псих
у Вас public static function create ничего не возвращает

Class Header
{
public static function create()
{
echo file_get_contents('theme/header.html');
return new Header();
}

public function AddLink($text,$url)
{
echo ''.$text.'';
}
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
soprun
@soprun
Software Architecture
$header = new Header();
$header->AddLink('title', 'href');
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы