2016-11-24 4 views
-2

Мы сделали массив из текстового файла, полного чисел, разделенных запятыми, каждая новая строка является новой частью массива. (нам не разрешено использовать для этого взрыв) Мы пытаемся создать функцию transpose_matrix для «транспонирования» массива. Использование учебники в Интернете, это то, что мы придумали до сих пор, но он не работает :(PHP - Как перенести массив из текстового файла

$myfile = fopen("text1.txt", "r") or die("Unable to open file!"); 
//echo fread($myfile,filesize("text1.txt")); 
$file1 = file("text1.txt"); 
$store1 = array(); 

for ($a = 0; $a<count($file1); $a++) 
    { 
     array_push($store1, $file1[$a]); 
    } 
for ($k = 0; $k<count($store1); $k++) 
    { 
     echo "Line $store1[$k] <br/> END <br/>"; 
    } 

function transpose($store1) { 
    $file1 = file("text1.txt"); 
    $store1 = array(); 

    if (count($store1) == 0) // special case: empty matrix 
     return array(); 
    else if (count($store1) == 1) // special case: row matrix 
     return array_chunk($store1[0], 1); 

    function myCallbackMethod() { 
     var_dump ($store1); 
    } 

    array_unshift($store1, NULL); // the original matrix is not modified because it was passed by value 
    return call_user_func_array('myCallbackMethod',$store1); 
} 

transpose($store1); 

fclose($myfile); 

} 
+2

Post некоторые примеры содержимого в файле – Elby

+2

Редактировать пост, вставить код, использовать совместное de format, чтобы выделить его правильно. –

+0

слышал о 'str_getcsv'? http://php.net/manual/fr/function.str-getcsv.php – Bobot

ответ

0

Попробуйте прочитать с fscanf(). что-то вроде

fscanf($file_link, '%s\n', $temp); 
array_push($array, $temp); 

должен работать .

Сукдев Mohan

Смежные вопросы