将CSV导入PHP时中断行

时间:2016-03-25 11:00:57

标签: php csv import

我一直在尝试将CS​​V导入到数据库中,但我偶然发现了可能是我的行结尾的问题。

当我将CSV文件放入数组时,它会使用分隔线并以长文本为句子创建新的数组键。

这是应该是一个数组键的输出。

[1] => Array
    (
        [0] => 16.39.01
        [1] => Jussen speelt Beethoven
        [2] => 
        [3] => Symfonisch
        [4] => Lucas Jussen - Beethoven
        [5] => Symfonie 1 & 2 en het Eerste pianoconcert
        [6] => "Pianotalent Lucas Jussen brengt met Het Gelders Orkest een sprankelend symfonisch programma. Onder begeleiding van vaste gastdirigent Christain Vásquez speelt de oudste van twee talentvolle broers Beethovens Symfonie nr. 1 en Symfonie nr. 2
    )

[2] => Array
    (
        [0] =>  afgewisseld met het Eerste pianoconcert van de beroemde dove componist.
    )

[3] => Array
    (
        [0] => Twee virtuozen op één avond: Lucas Jussen en Ludwig van Beethoven. De laatste gaf op 2 april 1800 in Wenen met een onorthodox beginakkoord voor het eerst zijn symfonisch visitekaartje af. ‘Ongepast voor een grootschalig concert in een ruim operatheater’
    )

[4] => Array
    (
        [0] =>  schreven de recensenten de volgende dag. 
    )

[5] => Array
    (
        [0] => Zacht en kwetsbaar
    )

[6] => Array
    (
        [0] => Pianotalent Lucas Jussen tapt uit een heel ander vaatje. Hij trad al eerder op met Het Gelders Orkest en wordt nationaal en internationaal geroemd om zijn zachte en kwetsbare manier van spelen. Na zijn studie bij Maria João Pires
    )

[7] => Array
    (
        [0] =>  Jan Wijn en Ton Hartsuiker bekwaamt hij zich verder bij de legendarische Menahem Pressler in Amerika. Hij wint in 2011 de Concertgebouw Young Talent Award en twee jaar later de Publieksprijs van de Festspiele Mecklenburg-Vorpommern. 
    )

[8] => Array
    (
        [0] => Bekroond met platina
    )

[9] => Array
    (
        [0] => Samen met zijn jongere broer Arthur heeft hij een exclusief platencontract bij het roemruchte label Deutsche Grammophon. Hun eerste cd - met werken van Beethoven – is bekroond met platina. Vaste gastdirigent Christian Vásquez is dus in uitstekend gezelschap en opent het seizoen sprankelend met Beethovens Symfonie nr. 1 en 2
    )

[10] => Array
    (
        [0] =>  afgewisseld door zijn Eerste pianoconcert."
        [1] => Jussen • Beethoven • Concert Apeldoorn Arnhem Doetinchem Nijmegen
        [2] => Het Gelders Orkest met pianist Lucas Jussen en gastdirigent Christian Vásquez. Beethoven Symfonie nr. 1 en nr. 2
    )

[11] => Array
    (
        [0] =>  1ste pianoconcert. Apeldoorn
    )

[12] => Array
    (
        [0] =>  Arnhem
    )

[13] => Array
    (
        [0] =>  Doetinchem
    )

[14] => Array
    (
        [0] =>  Nijmegen.
        [1] => Christian Vásquez 
        [2] => Beethoven 
        [3] => Symfonie nr.1 in C
    )

[15] => Array
    (
        [0] =>  op. 21
        [1] => Beethoven
        [2] => Pianoconcert nr.1 in C
    )

[16] => Array
    (
        [0] =>  op. 15
        [1] => Beethoven
        [2] => Symfonie nr.2 in D
    )

[17] => Array
    (
        [0] =>  op. 36
        [1] => 
        [2] => 
        [3] => 
        [4] => 
        [5] => Lucas Jussen
    )

[18] => Array
    (
        [0] =>  piano
        [1] => 
        [2] => 
        [3] => 
        [4] => 
        [5] => jussenspeeltbeethoven_afbeelding
        [6] => jussenspeeltbeethoven_header
        [7] => 
        [8] => 
        [9] => 
    )

这是我的代码:

ini_set('auto_detect_line_endings', TRUE);
$file = fopen('import/import.csv', 'r+');

while (($line = fgetcsv($file)) !== FALSE) {
    if (array(null) !== $line) { 
        foreach ($line as $key) {
            $line_array[] = explode(';', $key);
        }
    }
}
echo "<pre>";
print_r($line_array);
echo "</pre>";

fclose($file);

有任何想法的人吗?

0 个答案:

没有答案