如何使用php对.txt文件中的字符串进行排序?

如何使用php对.txt文件中的字符串进行排序?,php,html,Php,Html,我想按字母顺序显示“单词”,但我遇到的所有解决方案示例都不适用于我 我尝试过使用infrade()和explode()函数,使用file()函数,然后使用sort()函数 非常感谢您的帮助,谢谢 <!DOCTYPE html> <html> <head> <title>words list</title> </head> <body> <h1>Word List</h

我想按字母顺序显示“单词”,但我遇到的所有解决方案示例都不适用于我

我尝试过使用infrade()和explode()函数,使用file()函数,然后使用sort()函数

非常感谢您的帮助,谢谢

<!DOCTYPE html>
<html>
  <head>
    <title>words list</title>
  </head>
  <body>
    <h1>Word List</h1> 
    <?php
      @$fp = fopen("words.txt", 'rb');
      flock($fp, LOCK_SH); // lock file for reading



      while (!feof($fp)) {
         $words= fgets($fp);
     explode($words, "\n");
         file($words);
         sort($words);

         echo htmlspecialchars($words)."<br />";
      }
      flock($fp, LOCK_UN); // release read lock

      fclose($fp); 
    ?>
  </body>
</html>

词表
词表

对不起;我误解了你的问题。您需要将这些值放入数组中才能对其进行排序

> $i = 0;
>      while (!feof($fp)) {
>              $words[$i] = fgets($fp);
>              
>              $i++;
>           }
>      sort($words);
>     echo htmlspecialchars($words)."<br />";
$i=0;
>而(!feof($fp)){
>$words[$i]=fgets($fp);
>              
>$i++;
>           }
>排序($words);
>回音htmlspecialchars($words)。“
”;
对不起;我误解了你的问题。您需要将这些值放入数组中才能对其进行排序

> $i = 0;
>      while (!feof($fp)) {
>              $words[$i] = fgets($fp);
>              
>              $i++;
>           }
>      sort($words);
>     echo htmlspecialchars($words)."<br />";
$i=0;
>而(!feof($fp)){
>$words[$i]=fgets($fp);
>              
>$i++;
>           }
>排序($words);
>回音htmlspecialchars($words)。“
”;

词表
词表
我检查过了,它对我有效


词表
词表

我检查过了,它对我有效

如果你能提供文件的样本内容就更好了。我正在试着做一个词汇表。txt文件的每一行都是另一个单词。到目前为止,大部分只是测试单词。您是否考虑过数据库相对于平面文件的许多优点?最好提供文件的示例内容。我正在尝试制作一个词汇表。txt文件的每一行都是另一个单词。到目前为止,大部分只是测试单词。您是否考虑过数据库相对于平面文件的许多优点?您的方法效率较低,将其转换为字符串,然后将其转换为数组。您还只是用最后一行代码覆盖$words的值。然后,你把你的字符串数组和文件一起变成一个大数组,这样就没有什么可排序的了。你的方法效率较低,把它变成一个字符串,然后把它变成一个数组。您还只是用最后一行代码覆盖$words的值。然后,将字符串数组与文件一起变成一个大数组,这样就没有什么可排序的了。谢谢!这正是我需要的!你知道一种只列出排序单词数组的方法吗?我尝试过使用for循环,但它们不起作用。谢谢你抽出时间!根据我的假设,您要求的是列表排序数组,对吗?,
foreach($key=>value的行){echo$value;}
谢谢!这正是我需要的!你知道一种只列出排序单词数组的方法吗?我尝试过使用for循环,但它们不起作用。谢谢你抽出时间!根据我的假设,您要求的是列表排序数组,对吗?,
foreach($key=>value的行){echo$value;}