Laravel 5 - как обработать CSV-файл? - PullRequest
0 голосов
/ 04 октября 2018

У меня есть файл Excel, как показано ниже.

enter image description here

Я экспортирую его в CSV.Это выглядит ниже.

enter image description here

Я хотел бы отобразить содержимое, как показано ниже, но не в Excel, а в HTML-таблице.

enter image description here

public function numbers()
{
    $filepath = base_path('/storage/app/test5.csv');
    $file = file($filepath);
    $cols = explode(';', $file[0]);
    unset($cols[0]);
    $cols = array_values($cols);
    $vars = [];
    $values = [];
    foreach ($file as $k => $line) {
        if ($k > 0) {
            $row = explode(';', $line);
            foreach ($row as $i => $cell) {
                if ($i == 0) {
                    $vars[] = $row[0];
                } else {
                    $values['var' . $k]['col' . $i] = $row[$i];
                }
            }
        }
    }


    return view('layouts.liczby', ['cols' => $cols, 'vars' => $vars, 'values' => $values]);
}

Мой взгляд выглядит так

<table>
@foreach($vars as $v) 
   @foreach ($cols as $c)
<tr>
    <td>{{$v}}</td>
    <td>{{$c}}</td>
    <td>{{$values[$v][$c]}}</td>
</tr>
   @endforeach 
@endforeach

</table>

Я получаю сообщение об ошибке - Неопределенный индекс: col3 Пожалуйста, помогите.

1 Ответ

0 голосов
/ 04 октября 2018

str_getcsv - это встроенная функция php, которая преобразует строку csv в массив.Вы не должны анализировать эти данные самостоятельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...