我们如何在PHP中将文件(逐字逐句)提取到2D数组中?

Ind*_*ema 2 php arrays parsing file-handling

我有一个文本文件,其中包含一些我想放入2D数组的东西.该文本文件包含相等长度的句子.如何将每个单词放入数组?

文本文件的示例是 -

这是stackoverflow

我是用户

该文件每行包含3个单词

This - at [0][0] position
is - at [0][1] position
stackoverflow - at [0][2] position

I - at [1][0] position
am - at [1][1] position
user - at [1][2] position
Run Code Online (Sandbox Code Playgroud)

我做了这样的事情,但似乎没有成功.

$word_count = $word_length = 0;

if ($fh = fopen('array.txt','r')) {
    while (! feof($fh)) {
      if ($s = fgets($fh,1048576)) {
         $words = preg_split('/\s+/',$s,-1,PREG_SPLIT_NO_EMPTY);
         foreach ($words as $word) {
           $word_count++;
           $word_length += strlen($word);

           $array = array();
           for($i=$a;$i<($word_count/4);$i++)    
           {
            for($j=$b;$j<4;$j++)
            { 
             $array[$i][$j]=$words[$j];
            }
           }
                                   }
                                   }
                        }
                                   }
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.谢谢

Riz*_*123 6

这应该适合你:

刚刚看了你的文件与一个数组file(),并explode()用一个空格每一行array_map().

$lines = array_map(function($v){
    return explode(" ", $v);
}, file("yourTextFile.txt", FILE_IGNORE_NEW_LINES |FILE_SKIP_EMPTY_LINES));
Run Code Online (Sandbox Code Playgroud)