|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
不懂的问题有很多高手帮你解决。但不要认为你是新手,就不能帮助别人,比如今天你学会了怎样安装PHP,明天还可能有朋友会问这个问题,你就可以给他解答,不要认为这是浪费时间,忙别人其实就是帮助自己。上面是一个超等复杂的MVC布局完成,乃至连数据源都用了一个内置的固定命组,固然复杂,但其实浩瀚的PHP Framework中心完成的思惟应当和这个是差不多的 只不外一些framework供应了更多的便利开辟者利用的东西,我也想本人来完成一个PHP的 框架,今朝正在着手筹划中,也但愿本人可以从框架的开辟中进修到更多的PHP设计思惟和办法。
Controller.php
include 'Model.php';
include 'View.php';
class Controller {
private $model = '';
private $view = '';
public function Controller(){
$this->model = new Model();
$this->view = new View();
}
public function doAction( $method = 'defaultMethod', $params = array() ){
if( empty($method) ){
$this->defaultMethod();
}else if( method_exists($this, $method) ){
call_user_func(array($this, $method), $params);
}else{
$this->nonexisting_method();
}
}
public function link_page($name = ''){
$links = $this->model->getLinks();
$this->view->display($links);
$result = $this->model->getResult($name);
$this->view->display($result);
}
public function defaultMethod(){
$this->br();
echo "This is the default method. ";
}
public function nonexisting_method(){
$this->br();
echo "This is the noexisting method. ";
}
public function br(){
echo "<br />";
}
}
$controller = new Controller();
$controller->doAction('link_page', 'b');
$controller->doAction();
Model.php
Code
class Model {
private $database = array(
"a" => "hello world",
"b" => "ok well done",
"c" => "good bye",
);
//@TODO connect the database
//run the query and get the result
public function getResult($name){
if( empty($name) ){
return FALSE;
}
if( in_array($name, array_keys( $this->database ) ) ){
return $this->database[$name];
}
}
public function getLinks(){
$links = "<a href='#'>Link A</a> ";
$links.= "<a href='#'>Link B</a> ";
$links.= "<a href='#'>Link C</a> ";
return $links;
}
}
View.php
class View {
public function display($output){
// ob_start();
echo $output;
}
}
基础这个东西是个比较笼统的概念,如果你之前学习过c语言, c语言被认为是 |
|