php - 从文件中读取行并输出作为下拉列表的选项

标签 php forms post transform

我有 $data 包含类似这样的内容并且经常更改:

backup 2011-04-15 16:39:18.559965.zip
backup 2011-04-15 16:39:56.289656.zip
backup 2011-04-15 16:41:34.463754.zip
backup 2011-04-15 16:41:54.089134.zip
backup 2011-04-15 16:42:18.742616.zip
backup 2011-04-16 13:12:33.083622.zip
backup 2011-04-16 13:14:53.387308.zip
backup 2011-04-17 00:30:32.591461.zip

我怎样才能将其转换为下拉列表,以便人们可以从中进行选择,并且我可以将结果用作 $_POST['file']?

最佳答案

  1. 使用fopen()读取文本
  2. 使用 explode() 将文本拆分为数组
  3. 使用foreach()循环数组
  4. 选项标签之间echo元素。

编辑

我没有提供任何代码,因为您应该能够按照上述步骤自己编写此代码。只需使用 Google 即可了解这些功能的工作原理。你只能通过自己实现一些东西来学习 PHP。不要指望人们为您编写完整的脚本。

无论如何,这应该有效:)

$path = "files.txt";
$file = fopen($path, 'r');
$data = fread($file, filesize($path));
fclose($file);

$lines =  explode(PHP_EOL,$data);
echo '<select name="file">';
foreach($lines as $line) {
  echo '<option value="'. urlencode($line).'">'.$line.'</option>';
}
echo '</select>';

您还可以使用 file_get_contents() 代替 fopen()。

$data = file_get_contents("files.txt");

编辑

按照 Wiseguy 的推荐添加了 file()

$lines = file('files.txt');
echo '<select name="file">';
foreach($lines as $line) {
  echo '<option value="'. urlencode($line).'">'.$line.'</option>';
}
echo '</select>';

关于php - 从文件中读取行并输出作为下拉列表的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5690113/

相关文章:

forms - CSS 问题;验证码溢出表单边界

Spring Boot 测试 MockMvc 执行后 - 不工作

php - 无法从 $class 获取静态变量

php - 在查询中使用 "WHERE"时 PDO 失败

php - 拉维尔 |询问某些操作的密码

php - 如何在我的默认 Controller 上为焦点页面设置 Laravel 3 路由?

forms - Rails 3 在单一表单中编辑多条记录

JQuery .text不会出现在浏览器中,仅出现在firebug中,不会被发布

jquery - 查看jQuery传输的内容POST数据

php - 使用 Javascript 或 HTML 进行 POST 安全 SSL 登录