Autor | Zpráva | ||
---|---|---|---|
eleef Profil |
#1 · Zasláno: 19. 1. 2010, 14:38:29
Dobrý den, prosím o rady či nápady jak udělat export z PHP do CSV souboru s požadavkem proměných do jednotlivých sloupců.
Vím, že existuje funkce fputcsv(), ale ta dá všechny údaje do řádku a do prvního sloupečku. Potřebuji dát každý údaj jednotlivě do sloupců. $rec= $id . $nazev . $vyrobce ; $fp = fopen("soubor.csv", "w"); fputcsv($fp, (array)$rec); Zkoušel jsem $rec= $id .";". $nazev .";". $vyrobce ; Tedy oddělovač středník. Předem děkuji. Přemýšlím, ještě nainsertovat do sql a v phpmyadminu dát export do csv, který to do sloupců asi dělá. |
||
Taps Profil |
#2 · Zasláno: 19. 1. 2010, 15:00:10
eleef:
já používám file_put_contents $rec= $id .";". $nazev .";". $vyrobce ; file_put_contents("soubor.csv",$rec); |
||
AM_ Profil |
#3 · Zasláno: 19. 1. 2010, 15:03:02
eleef:
„fputcsv($fp, (array)$rec);“ rozhodně nemůžeš očekávat, když údaje nacpeš (ještě k tomu nijak neoddělené) do řetězce a ten přetypuješ na pole, že to pole bude mít správný formát. Kdyžtak takto: $lines = array( array($id1, $nazev1, $vyrobce1); array($id2, $nazev2, $vyrobce2); ); foreach ($lines as $line) { fputcsv($f, $line); } |
||
AM_ Profil |
#4 · Zasláno: 19. 1. 2010, 15:05:06
Taps:
to sice lze taky, ale funkce fputcsv zvládá zřejmě i základní escapování CSV (kdyby se ve jménu např. objevil středník nebo uvozovka). |
||
eleef Profil |
#5 · Zasláno: 20. 1. 2010, 20:50:58
Zkusil jsem to podle Tapse a už to krásně zapisuje do csv do sloupců, ale nevím ještě jak udělat aby se mi nezapsal jen poslední řádek, ale všech řeknu příklad 3000 položek.
Jak na to prosím. Děkuji |
||
Kcko Profil |
#6 · Zasláno: 20. 1. 2010, 21:28:11
file_put_contents vzdy zapise do souboru tak ze ho vytvori znova. Proto zapises pouze 1x a to vysledny string.
|
||
eleef Profil |
#7 · Zasláno: 20. 1. 2010, 21:40:03
fputcsv by to uměl vyřešit? nezle soubor otevřít a zapsat jakoby na konec nebo lépe přidat řádek?
děkuji |
||
Časová prodleva: 14 let
|
0