이 글에서는 주로 파일이나 배열의 단어 빈도를 계산하는 PHP 방법을 소개합니다. PHP 정규화, 배열 연산, 문자열 탐색 및 기타 관련 기술과 관련된 단어 빈도 계산의 2가지 예를 제공합니다.
자세한 내용은 다음과 같습니다.
작은 파일이라면 한 번에 배열로 읽어 들일 수 있고, 단어 빈도 통계에 편리한 배열 카운팅 기능을 사용할 수 있습니다(파일의 내용이 모두 다라는 가정하에) 공백으로 구분된 단어):
<?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 == ' ') { $results[$word]++; $word = ""; } else { $word .= $letter; } } fclose($handle); print_r($results);
관련 권장 사항:
php 배열 함수 array_unique()는 배열에서 중복된 값을 제거합니다
PHP 배열 함수 shuffle() 및 array_rand() 임의 함수를 사용하는 단계에 대한 자세한 설명
위 내용은 PHP는 파일이나 배열에서 단어의 빈도를 계산하는 방법을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!