Nadal męczę temat z poprzednich wątków. Tym razem próbuję zaciągnąć kontakty z .csv wygenerowanego w Gmailu. Googlowałem rzecz jasna, znalazłem kilka prostych gotowcy jakobrabiać CSV-ki w PHP ale wszystkie się gubią jak np, w informacjach o kontakcie jest kilka linijek bo wszystkie traktują plik jako podzielony \n na rowy. Tymczasem szukam rozwiązania któ?e poprawnie zinterpretuje taki kod:
Używałeś: https://www.php.net/manual/en/function.fgetcsv.php ?
Działa tylko że zwraca dane w postaci $data[0], $data[54] a nie $data[name], $data[street]. Niby nie duży problem ale mogłoby traktować pierwszą linjkę jako nagłówki. W dodatku trzeba uważać, żeby pierwszego wiersza przypadkowo nie potraktować jako dane. W drugim przykładzie w linku który podałeś jest opisane jak zrobić z headerami ale to znowu się wykrzacza w przypadku wielowierszowych pól.
Który przykład masz na myśli? Podaj link.
$rows = []; if (($handle = http://www.php.net/fopen("myfile.csv", "r")) !== FALSE) { while (($row = http://www.php.net/fgetcsv($handle, 1000, ",")) !== FALSE) { $rows[] = $row; } http://www.php.net/fclose($handle); } $header = http://www.php.net/array_shift($rows); $csv = []; foreach ($rows as $row) { $csv[] = array_combine($header, $row); }
Piękny fragment kodu, dzięki!
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)