<?php
$wordFrequencyArray = array();
function countWordsfrequency($filename) {
global $wordFrequencyArray;
$contentoffile = (file_get_contents($filename));
$wordArray = preg_split('/[^a-zA-Z0-9]/', $contentoffile, -1, NO_EMPTY);
foreach (array_count_values($wordArray) as $word => $count) {
if (!isset($wordFrequencyArray[$word])) $wordFrequencyArray[$word] = 0;
$wordFrequencyArray[$word] += $count;
}
}
$filenames = array('file1.txt', 'file2.txt','file3.txt','file4.txt');
foreach ($filenames as $filename) {
countWordsfrequency($filename);
}
print_r($wordFrequencyArray);
?>
これは、複数のファイル内の各単語の頻度を見つけてそれらを印刷するための私のコードです。今、私がやりたいことは、どの単語がどのファイルで発生するかという交点を見つけることです。たとえば、「スタック」という単語がある場合は、それが発生するファイルと、すでに計算したと思われるその頻度を印刷します。
最終的な結果は、頻度の後にその単語が出現するファイルのようになるはずです。
どのように進めればよいですか?countWords
関数自体の for ループでチェックする必要があります。