Как установить динамический заголовок для расширенной публичной переменной с ООП?

Я надеюсь, что кто-то может помочь мне. Как лучше всего динамически изменить заголовок страницы, описание или ключ vs..vs.. путем расширения исходного класса? Вот что у меня так далеко:

<?php
class siteGlobal
{
public $arr = array('title'=>'Page Default title','desc'=>'Page default     description');
public function pageHeader()
{ ?>
<!doctype html><html>
<?php   }

public function metaTags()
{ ?>
<head>
<meta charset="utf-8">
<title><?php echo $this->arr['title'];?></title>
<meta name="description" content="<?php echo $this->arr['desc'];?>">
<?php    }

public function pageBody()
{ ?>
</head>
<body>
<?php    }

public function pageFooter()
{ ?>
</body>
</html>
<?php    }
} ?>

ДРУГАЯ СТРАНИЦА

require_once('siteGlobal.php');
class pageDetail extends siteGlobal
{
public function __construct()
{
$this->pageHeader();
$this->newMetas();
$this->startBody();
$this->sayfaBilgileri();
$this->pageFooter();
}

public function newMetas()
{
parent::metaTags();
}

public function sayfaBilgileri()
{
//HOW I can write a new title and description in this function to siteGlobal.php (public $metaInfo) ?>
<div style="width:640px; margin:0 auto;">
<h1>Page New Title</h1>
<h2>Page New Subtitle</h2>
<p>Lorem Ipsum, bla bla....</p>
</div>
<?php    }
}

$writePage = new pageDetail(); ?>

1

Решение

Вы можете попытаться создать метод в родительском классе, скажем:

protected function setTitle($title){
$this->arr['title'] = $title;
}

и использовать его в расширенном классе следующим образом:

parent::setTitle("My title");
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]