我正在学习PHP中的OOP。
我以前使用以下逻辑加载页面:
// Example url: index.php?page=something
$page = isset($_GET['page']) ? $_GET['page'] : false;
if (!empty($page)) {
include 'content/' . $page . '.php';
}
但我想知道它是如何以面向对象的方式完成的。是通过方法完成的吗?
也许是这样的:
public function loadContent($_GET['page'])
{
$url = 'content/' . $_GET['page'] . '.php';
return $url;
}
答案 0 :(得分:2)
这样的事情怎么样......
class Page {
/**
* The page name
*
* @var string
*/
private $page;
/**
* Constructor
*
* @param string $page
*/
public function __construct($page)
{
$this->page = $page;
}
/**
* Load the content of the page
*
* @return string|null
*/
public function loadContent()
{
$file = 'content/' . $this->page . '.php';
if (file_exists($file)) {
return include $file;
}
}
}
// Load the page class if we have a page
if (isset($_GET['page'])) {
$page = new Page($_GET['page']);
echo $page->loadContent();
}