Единственный объектно-ориентированный опыт, который у меня есть, связан с C #, поэтому PHP бросает мне несколько кривых шаров, с которыми я мог бы помочь.
У меня есть класс, который я использую для всех своих страниц, - pagebase" если вы будете.Он обрабатывает HTML структуру самого низкого уровня.Этот класс наследуется несколькими другими классами.Эти классы относятся к разным типам страниц сайта.Теперь: у меня проблемы с установкой переменной в "базе страниц" из экземпляра класса, который ее наследует.В C # это не составило бы труда увидеть, как экземпляр класса ведет себя так, как если бы он был унаследованным классом.
Это представление того, что у меня есть:
pagebase.php
<?php
class pagebase
{
var $title = "No title";
var $body = "<center>No content</center>";
function setTitle($value) {
$this->title = $value;
}
function setBody($value) {
$this->title = $value;
}
function updateHTML()
{
...
}
function drawPage()
{
$this->updateHTML();
echo $this->html;
}
}
?>
std_page.php
<?php
include("includes/pagebase.php");
class std_page extends pagebase
{
function std_page()
{
...
}
function updateHTML()
{
parent::setBody(
"
<div id=\"main_wrapper\">
The page goes here!
</div>
"
);
}
function drawPage()
{
$this->updateHTML();
parent::drawPage();
}
}
?>
index.php
<?php
include "includes/std_page.php";
$page = new std_page;
$page->setTitle("Avesta");
$page->drawPage();
?>
Кроме всего прочего, самая большая проблема здесь заключается в том, что НИЧЕГО НЕ РАБОТАЕТ.Значения в базе страниц не изменяются, даже если я не получаю сообщение об ошибке, указывающее на то, что функция не была найдена или запущена в любой форме, способом или формой.
Кто-то, пожалуйста, просто сообщите мне, что я делаю неправильно- Спасибо