>  기사  >  백엔드 개발  >  PHP를 사용하여 파일이나 배열의 단어 빈도를 계산하는 방법

PHP를 사용하여 파일이나 배열의 단어 빈도를 계산하는 방법

怪我咯
怪我咯원래의
2017-07-04 13:32:351158검색

이 글에서는 주로 파일이나 배열의 단어 빈도를 계산하는 PHP 프로그래밍 방법을 소개합니다. PHP 정규화, 배열 작업 및 문자열순회 및 기타 관련 기술을 포함하는 단어 빈도 계산의 두 가지 예를 제공합니다. 다음을 참고하시면 됩니다.

이 글의 예시에서는 PHP 프로그래밍을 이용하여 파일이나 배열에서 단어의 빈도를 계산하는 방법을 설명하고 있습니다. 자세한 내용은 다음과 같습니다.

작은 파일인 경우 한 번에 배열로 읽어들일 수 있으며 편리한 배열 계산 기능을 사용하여 단어 빈도 통계를 수행할 수 있습니다(내용이 가정됨). 파일의 모든 단어는 공백으로 구분됩니다.

<?php
$str = file_get_contents("/path/to/file.txt"); //get string from file
preg_match_all("/\b(\w+[-]\w+)|(\w+)\b/",$str,$r); //place words into array $r - this includes hyphenated words
$words = array_count_values(array_map("strtolower",$r[0])); //create new array - with case-insensitive count
arsort($words); //order from high to low
print_r($words)

대용량 파일인 경우 메모리로 읽어들이는 것은 적절하지 않습니다.

<?php
$filename = "/path/to/file.txt";
$handle = fopen($filename,"r");
if ($handle === false) {
 exit;
}
$word = "";
while (false !== ($letter = fgetc($handle))) {
 if ($letter == &#39; &#39;) {
  $results[$word]++;
  $word = "";
 }
 else {
  $word .= $letter;
 }
}
fclose($handle);
print_r($results);

위 내용은 PHP를 사용하여 파일이나 배열의 단어 빈도를 계산하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.