我有下面的代碼,每當我發佈一個值,它不會將它添加到數組。這就像它創建一個只有我發佈的值的新數組。PHP MVC添加到數組後
<?php
class Model
{
public $task;
public function __construct()
{
$this->task = array();
}
}
class Controller
{
public $model;
public function __construct(Model $model)
{
$this->model = $model;
}
public function addTask($taskToAdd)
{
array_push($this->model->task, $taskToAdd);
}
}
class View
{
public $model;
public $controller;
public function __construct(Controller $controller, Model $model)
{
$this->controller = $controller;
$this->model = $model;
}
public function drawScreen()
{
$htmlForm = "<!doctype HTML>";
$htmlForm = $htmlForm . "<html><head><title>php form test</title></head>";
$htmlForm = $htmlForm . "<body>";
$htmlForm = $htmlForm . "<form method='POST' action='index.php'>";
$htmlForm = $htmlForm . "<input type='text' name='newtask' />";
$htmlForm = $htmlForm . "<input type='submit' value='Add new task' />";
$htmlForm = $htmlForm . "</form></body></html>";
echo $htmlForm;
}
public function listTasks()
{
print_r($this->model->task);
}
}
$model = new Model();
$controller = new Controller($model);
$view = new View($controller, $model);
if (isset($_POST['newtask'])) {
$taskToAdd = $_POST['newtask'];
$controller->addTask($taskToAdd);
}
echo $view->drawScreen();
echo $view->listTasks();
不知道我在做什麼錯在這裏。 array_push不是正確的方法嗎?我使用xampp,如果它有任何區別。任何想法我做錯了什麼?
您必須將模型保存到數據庫並每次從該數據庫加載。因爲您的PHP代碼一次又一次編譯腳本並且每次都銷燬您的模型。試着像電腦一樣思考,如果你得到這些指導,你會怎麼做? – Black