Php 在该索引处定义数组时获取未定义的偏移量错误

Php 在该索引处定义数组时获取未定义的偏移量错误,php,arrays,Php,Arrays,文件$wordFile[超过数百行]的每一行都由一个单词+空格+十进制数+空格组成 我需要从文件中提取数字和单词,并将它们添加到$indivFreq数组中。但是我犯了错误 注意:未定义的偏移量:1英寸/ 这是我的代码: $wordFile = file_get_contents("wordFile.txt"); $termArr = explode("\n", $wordFile); $wordFile2 = file_get_contents("wordFile2.tx

文件$wordFile[超过数百行]的每一行都由一个单词+空格+十进制数+空格组成

我需要从文件中提取数字和单词,并将它们添加到$indivFreq数组中。但是我犯了错误

注意:未定义的偏移量:1英寸/

这是我的代码:

    $wordFile = file_get_contents("wordFile.txt");
    $termArr = explode("\n", $wordFile);
    $wordFile2 = file_get_contents("wordFile2.txt");
    $termArr2 = explode("\n", $wordFile2);
    $cityFreqsArr = array($termArr, $termArr2);
    $twoTerms = array();
    $decimalScore = number_format("0", 8);
    $indivFreqs = array("", $decimalScore);
    $twoDimFreqArr = [[]];
    for($i=0; $i<count($termArr); $i++){

        for($i2=0; $i2 < count($cityFreqsArr[$i]); $i2++){
            $currentTerm = $cityFreqsArr[$i][$i2];
            $currentTerm = trim($cityFreqsArr[$i][$i2]);    
            $twoTerms = explode(' ', $currentTerm);    //separating each string of term and its frequency into the 2 parts

            $indivFreqs[0] = $twoTerms[0];
            $indivFreqs[1] = $twoTerms[1]; //**error is here
            $twoDimFreqArr[$i][$i2] = $indivFreqs; //for each city and each term there is an array with the term and its frequency
                                                   //i.e., 
        }
    }
$wordFile=file\u获取内容(“wordFile.txt”);
$termArr=分解(“\n”,$wordFile);
$wordFile2=文件获取内容(“wordFile2.txt”);
$termArr2=分解(“\n”,$wordFile2);
$cityFreqsArr=数组($termArr,$termArr2);
$twoTerms=array();
$decimalScore=数字\ U格式(“0”,8);
$indivFreqs=数组(“,$decimalScore);
$twoDimFreqArr=[[]];

对于($i=0;$i word and index 1=>number,这就是为什么我不明白php为什么看不到它的索引也为1?

您已经将
$cityFreqsArr
定义为一个二维数组,其行数等于正在读取的文件数(在这个特定示例中为2.第一行(带有
$index=0
)正在保存
$wordFile.txt
/
$termArr
的数据。第二行是第二行

现在,为了存储每个城市、每个术语及其各自的术语和频率的数据,您应该首先按其行(作为文件)遍历
$cityFreqsArr
,然后再遍历第二级
$index
(作为每个文件的内容)。因此,我更新了第一级和第二级
,以了解与此相关的条件

$wordFile = file_get_contents("wordFile.txt");
$termArr = explode("\n", $wordFile);
$wordFile2 = file_get_contents("wordFile2.txt");
$termArr2 = explode("\n", $wordFile2);
$cityFreqsArr = array($termArr, $termArr2);
$twoTerms = array();
$decimalScore = number_format("0", 8);
$indivFreqs = array("", $decimalScore);
$twoDimFreqArr = [[]];
for ($i = 0; $i < count($cityFreqsArr); $i++) { //Traversing file by file
  for ($i2 = 0; $i2 < count($cityFreqsArr[$i]); $i2++) { //Traversing in each file
    $twoTerms = explode(' ', trim($cityFreqsArr[$i][$i2]));
    $indivFreqs[] = $twoTerms[0];
    $indivFreqs[] = $twoTerms[1];
    $twoDimFreqArr[$i][$i2] = $indivFreqs;
  }
}

// Test it:
echo '<pre>';
print_r($twoDimFreqArr);
echo '</pre>';
$wordFile=file\u获取内容(“wordFile.txt”);
$termArr=分解(“\n”,$wordFile);
$wordFile2=文件获取内容(“wordFile2.txt”);
$termArr2=分解(“\n”,$wordFile2);
$cityFreqsArr=数组($termArr,$termArr2);
$twoTerms=array();
$decimalScore=数字\ U格式(“0”,8);
$indivFreqs=数组(“,$decimalScore);
$twoDimFreqArr=[[]];
对于($i=0;$i
您确定
$termArr
是二维的吗?很抱歉,我在复制代码时试图减少代码,并忽略了我创建的用于存储两个word文件的二维数组。请参阅编辑。我可以打印$twoTerm[1],但不能分配给任何东西。有什么想法吗?似乎很奇怪。你能为其中一个文件提供一小块吗?@BehradKhodayar:reputations 0.00016854 thaïs 0.00016854溢出0.00016854,并继续这样(每个数字后面都应该有换行符,但不允许评论。)that@AndrewY此答案是否解决了您的问题?如果是,请授予绿色勾号;如果不是,请以评论的形式向NDFA提供反馈,以便对答案进行编辑。只有解决了的问题才有利于未来的so读者/研究人员。