在PHP中从文本文件生成列表

在PHP中从文本文件生成列表,php,list,text,Php,List,Text,我正在尝试从文本文件创建有序列表。正如我的代码目前所示,它修改了原始文本文件,所有输入都在同一行(列表编号)。e、 g如果我输入“mercury”,它将显示为1。水星,但如果我输入“维纳斯”,它将显示为1.mercuryvenus 我正试图让它工作,这样,如果我输入一些文本,如“mercury”,并点击提交按钮,它将显示为 1.水星如果我再输入一些文本,例如“venus”,它将显示为2。维纳斯,都是有序列表格式。我假设explode可以用于此目的,但我不确定如何正确实施此功能。另一个选择是为每个

我正在尝试从文本文件创建有序列表。正如我的代码目前所示,它修改了原始文本文件,所有输入都在同一行(列表编号)。e、 g如果我输入“mercury”,它将显示为1。水星,但如果我输入“维纳斯”,它将显示为1.mercuryvenus

我正试图让它工作,这样,如果我输入一些文本,如“mercury”,并点击提交按钮,它将显示为 1.水星如果我再输入一些文本,例如“venus”,它将显示为2。维纳斯,都是有序列表格式。我假设explode可以用于此目的,但我不确定如何正确实施此功能。另一个选择是为每个输入创建一个新的文本文件,如果这样更有效的话

  echo "<form method='post'>

   <label>Enter some text</label><br>
   <textarea name='textbox' cols='60' rows='5' required></textarea>
        <br>
        <input type='submit' name='submit' value='Submit'/>
        <input type='hidden' name='step' value=''/>

    </form>";

  echo "<section>"; 

    echo "<h3>Current tasks</h3>";

        $text = ("text.txt");
        $extract = (isset($_POST['textbox']) ? $_POST['textbox'] : null);
        $file = fopen($text,"a");
        fwrite($file,$extract);
        fread($file,filesize("text.txt"));
        fclose($file); #Not sure where this should really go

        $c = array(file_get_contents('text.txt'));
        $x = explode(" ",$c); #Could be wrong format

      echo "<ol>";

        foreach($c as $r) {
          echo "<li>" . $r. "</li>", "<br>";

         }
      echo "</ol>";

  echo "</section>";
echo”
输入一些文本

"; 回声“; 回应“当前任务”; $text=(“text.txt”); $extract=(isset($\u POST['textbox'])?$\u POST['textbox']:null); $file=fopen($text,“a”); fwrite($file,$extract); fread($file,filesize(“text.txt”); fclose($文件)#我不知道这到底应该放在哪里 $c=数组(文件获取内容('text.txt'); $x=爆炸(“,$c”)#可能是错误的格式 回声“; 外汇($c作为$r){ 回声“
  • ”$r.“
  • ”,“
    ”; } 回声“; 回声“;
  • 首先,
    fopen($text,“a”)
    中的
    “a”表示追加。这意味着,如果你的文件中已经有文本“mercury”,并且你用“venus”再次运行你的程序,那么你将在“mercury”的末尾加上“venus”以获得“mercuryvenus”。如果您想在两者之间留一个空格,则必须在将其写入文件时添加它:
    fwrite($file,“$extract”)

    第二,在
    foreach
    语句中使用
    $x=explode(…
    ),然后不使用
    $x
    。在
    foreach
    语句中使用
    $x
    而不是
    $c
    ,以下是解决方案

    echo "<section>";
    
    echo "<h3>Current tasks</h3>";
    
    
    $text = "text.txt";
    $extract = (isset($_POST['textbox']) ? $_POST['textbox'] : null);
    $file = fopen($text,"a+");
    fwrite($file," ".$extract);
    #fread($file,filesize("$text"));
    
    
    $x = explode(" ",file_get_contents($text));
    
    
    if(isset($_POST['submit'])) {
        echo "<ol>";
    
    
        foreach ($x as $r) {
            echo "<li>" . $r . "</li>", "<br>";
        }
        echo "</ol>";
    
    echo "</section>"
    
    echo”“;
    回应“当前任务”;
    $text=“text.txt”;
    $extract=(isset($\u POST['textbox'])?$\u POST['textbox']:null);
    $file=fopen($text,“a+”);
    fwrite($file,“.”$extract);
    #fread($file,filesize($text));
    $x=分解(“,文件获取内容($text));
    如果(isset($_POST['submit'])){
    回声“;
    外汇($x为$r){
    回声“
  • ”$r.
  • ”,“
    ”; } 回声“; 回声“”
    你问了很多问题,但还没有接受任何答案。本网站是双向的。如果你希望得到帮助,你应该通过接受他们的答案来奖励那些帮助你的人。阅读并开始回馈社区。我很抱歉。我将确保从现在开始这样做。