Интервал в CSV-файле при преобразовании из массива

Я пытаюсь преобразовать массив, возвращаемый sql-запросом, в файл CSV, но я испытываю странное поведение моего кода, поскольку первая строка моего файла CSV выходит пустой, а также строка, содержащая заголовки столбцов, начинается после двух блоков. следующий мой код,

$csv = "name,job,salary,age \n";
$export = $this->model2->emp_data();
foreach ($export as $key => $value) { 
                $csv.=  $value['name'].','. $value['job'].','. $value['sal'].','.$value['age']."\n";
}
$filename ='excel.csv';
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename = " . $filename);
header("Pragma: no-cache");
header("Expires: 0");
$csv_handler = fopen('php://output', 'w');            
fwrite ($csv_handler,$csv);
fclose ($csv_handler);

$ csv дает мне имена моих заголовков, $ export - это данные, возвращаемые sql что я здесь не так? Спасибо

образец ввода (данные, возвращенные запросом) -

[0] => Array
        (
            [name] => jeff1
            [job] => DBA
            [sal] => 6999
            [age] => 44
            [create] => test
            [update] => test

        )

    [1] => Array
        (
          [name] => jeff2
            [job] => DBA
            [sal] => 6999
            [age] => 44
            [create] => test
            [update] => test
        )
        ....so on

выход - https://drive.google.com/open?id=1u0Q8OgerLAGlq_r610W7KU0N0hnu0gZE

не могли бы вы добавить образец ввода и текущего вывода?

Jeff 07.10.2018 16:19

привет Джефф спасибо за быстрый ответ проверьте вопрос, который я только что задал

shellbot 07.10.2018 16:29

Не выводите свои строки, просто соединяя поля запятыми - он сломается, как только вы получите поле с запятой. Вместо этого используйте fputcsv(), который сделает за вас все необходимое экранирование.

Alex Howansky 07.10.2018 16:33

спасибо @AlexHowansky, я хотел обновить код, чтобы использовать fputcsv () .. Решит ли это проблему, с которой я сейчас сталкиваюсь с заголовками?

shellbot 07.10.2018 16:35

Какая у вас версия PHP и какие сведения о сервере? Я тоже сталкиваюсь с той же проблемой. Это началось после обновления до PHP 7.

Madhur Bhaiya 07.10.2018 18:09

Попробуйте открыть этот CSV с помощью текстового редактора (не Excel) и проверьте, есть ли в начале пустая строка.

Madhur Bhaiya 07.10.2018 18:11

Проверить: ozonesolutions.com/programming/2012/06/…

Madhur Bhaiya 07.10.2018 18:15

@MadhurBhaiya да, там пусто, но я не понимаю, откуда оно?

shellbot 07.10.2018 18:50

Я проверил функцию, в которой я написал метод загрузки, но там нет пустых строк, есть ли способ игнорировать эти пробелы

shellbot 07.10.2018 18:54

Возможно, вы захотите понять и попробовать решение этого поста.

Stock Overflaw 07.10.2018 19:33
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
10
50
0

Другие вопросы по теме