PHP를 사용하여 배열의 단어 빈도를 계산하는 방법에 대한 자세한 설명

巴扎黑
풀어 주다: 2023-03-15 06:26:01
원래의
1925명이 탐색했습니다.

이 글에서는 주로 파일이나 배열의 단어 빈도를 계산하는 PHP 프로그래밍 방법을 소개합니다. PHP 정규화, 배열 연산, 문자열 탐색 및 기타 관련 기술을 포함하여 단어 빈도 계산에 대한 2가지 예를 제공합니다. 다음

이 기사의 예에서는 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);
로그인 후 복사

For 대용량 파일의 경우 두 번째 방법이 더 빠르고 안전하며 메모리 예외가 발생하지 않습니다.

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

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!