用PHP写一个程序:使用数组、表单、字符串处理,随机函数函数等实现功能: 顺序点名 随机点名 指定点名,并保证可以输出所以人
时间: 2023-06-01 09:03:41 浏览: 96
以下是用PHP编写的程序,实现顺序点名、随机点名、指定点名,并保证可以输出所有人的功能:
```php
<?php
// 学生名单
$students = array("小明", "小红", "小刚", "小李", "小张", "小王");
// 获取表单提交的操作
$action = isset($_POST['action']) ? $_POST['action'] : '';
// 顺序点名
if ($action == 'order') {
// 获取上次点名的位置
$index = isset($_POST['index']) ? intval($_POST['index']) : 0;
// 如果已经点完名,从头开始
if ($index >= count($students)) {
$index = 0;
}
// 输出当前点名的学生
echo $students[$index];
// 更新下次点名的位置
$index++;
echo '<form method="post" action=""><input type="hidden" name="action" value="order"><input type="hidden" name="index" value="' . $index . '"><input type="submit" value="下一个"></form>';
}
// 随机点名
if ($action == 'random') {
// 随机选择一个学生
$index = array_rand($students);
echo $students[$index];
// 显示“再来一个”按钮
echo '<form method="post" action=""><input type="hidden" name="action" value="random"><input type="submit" value="再来一个"></form>';
}
// 指定点名
if ($action == 'specific') {
// 获取要点名的学生
$name = isset($_POST['name']) ? $_POST['name'] : '';
// 判断学生是否在名单中
if (in_array($name, $students)) {
echo $name;
} else {
echo '没有这个学生';
}
// 显示“返回”按钮
echo '<form method="post" action=""><input type="submit" value="返回"></form>';
}
// 输出所有学生名单
echo '<br>所有学生名单:<br>';
foreach ($students as $name) {
echo $name . '<br>';
}
?>
```
这个程序使用了三个表单操作:
1. 顺序点名:记录上一次点名的位置,输出当前学生名字,更新下一次点名的位置。
2. 随机点名:随机选择一个学生,输出名字,显示“再来一个”按钮。
3. 指定点名:获取要点名的学生名字,判断其是否在名单中,输出结果,显示“返回”按钮。
阅读全文