<?php
// Initialize an empty array to store tasks
$tasks = [];
// Function to add a task to the list
function addTask($task) {
global $tasks;
$tasks[] = $task;
}
// Function to remove a task from the list by index
function removeTask($index) {
global $tasks;
if (isset($tasks[$index])) {
unset($tasks[$index]);
// Reset array keys to maintain sequential indexing
$tasks = array_values($tasks);
}
}
// Function to display the tasks as an HTML list
function displayTasks() {
global $tasks;
echo "<ul>";
foreach ($tasks as $index => $task) {
echo "<li>$task <a href='?action=remove&index=$index'>Remove</a></li>";
}
echo "</ul>";
}
// Check if an action is requested (add or remove)
if (isset($_GET['action'])) {
$action = $_GET['action'];
if ($action === 'add' && isset($_POST['task'])) {
$newTask = $_POST['task'];
addTask($newTask);
} elseif ($action === 'remove' && isset($_GET['index'])) {
$index = $_GET['index'];
removeTask($index);
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Simple Todo List</title>
</head>
<body>
<h1>Simple Todo List</h1>
<form action="?action=add" method="post">
<label for="task">Add a task:</label>
<input type="text" id="task" name="task" required>
<button type="submit">Add Task</button>
</form>
<h2>Tasks:</h2>
<?php displayTasks(); ?>
</body>
</html>
这个PHP应用包含以下几个关键功能:
- 添加任务功能: 用户可以在表单中输入新的任务,点击提交按钮后,任务将会被添加到待办事项列表中。
- 移除任务功能: 每个任务后面都有一个“Remove”链接,点击该链接可以移除对应的任务。
- 显示任务列表: 所有添加到列表中的任务会以HTML的无序列表(
<ul>
)形式展示出来,每个任务后面都有一个移除链接。 - 页面交互: 使用表单提交和GET参数来处理添加和移除任务的动作,保证用户可以方便地添加和管理任务。
这个应用展示了如何使用PHP来实现一个基本的交互式Web应用,涵盖了表单处理、数据存储(在本例中是一个简单的数组)、以及动态生成HTML内容。这种类型的应用适合于个人项目、学习用途或者快速原型开发。