如何从文本文件story.txt中打印最长和最短的单词,并在php中查找每个单词的出现频率?

如果任何人都无法回答我的问题,请至少不要投票否决它。我是php新手。

$string = file_get_contents('./story.txt', true); 

$words  = explode('\n', $string);
$w = array();

foreach ($words as $word) {
$temp = explode(' ', $word);
$w = array_merge($w, $temp);

}

$longestWordLength = 0;
$longestWord = '';

foreach ($w as $word) {
   if (strlen($word) > $longestWordLength) {
      $longestWordLength = strlen($word);
      $longestWord = $word;
   }
}

echo $longestWord;
echo strlen($longestWord);

我已经编写了这段代码,但是它扫描了一个段落的结尾单词和下一个段落的第一个单词。在以下段落中:

沿河的艺术几乎就像一道阳光。      沙漠动物通常是沙漠的颜色。

在这个

阳光。沙漠

被视为一个单词。