php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 05-03-2008, 01:27
onkel_jonny
 Newbie
Links : Onlinestatus : onkel_jonny ist offline
Registriert seit: Mar 2008
Beiträge: 5
onkel_jonny ist zur Zeit noch ein unbeschriebenes Blatt
Standard bestimmte Zeilen einer CSV auslesen

Hallo, bin neu auf diesem Gebiet und hoffe auf Eure Hilfe. Ich habe eine csv-Datei mit mehreren Zeilen und Spalten (getrennt mit semikolon) und möchte gern, dass ich per PHP die ersten 3 Zeilen auslesen kann und daraus nur die ersten 2 Spalten. Wie ich die komplette Datei auslesen kann und dass mir daraus einzelne Spalten angezeigt bekomme ist mir bekannt, Ich möchte aber nur die ersten 3 Zeilen nd daraus die ersten 2 Spalten angezeigt bekommen. Ich weiss auch, dass man dazu irgenteine Schleife basteln kann, aber nicht wie das geht. Da bin ich nicht so bewandert und das durchlesen von den Befehlen verstehe ich auch noch nicht richtig. Könnte mir jemand meinen PHP-Code so erweitern, dass das so funktioniert wie ich es haben möchte?

<?php
$handle = fopen('news.csv', 'r');
while ($data = fgetcsv($handle, 30000, ';'))
{
echo "$data[0]<br>$data[1]\n";
}
fclose($handle);
?>
Mit Zitat antworten
  #2 (permalink)  
Alt 05-03-2008, 02:20
Stub
 Newbie
Links : Onlinestatus : Stub ist offline
Registriert seit: Mar 2008
Ort: NRW
Beiträge: 5
Stub ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn Du
1. immer nur die ersten 3 zeilen einlesen möchtest und
2. immer sicher sein kannst, das mind. 3 zeilen in der datei stehen

dann brauchst du nicht die ganze datei einlesen sondern nur 3 Zeilen

Beispiel:
if (file_exists($PfadDatei)) {
$Datei = fopen($PfadDatei,"r");
$Zeile1 = fgets($Datei,9999);
$Zeile2 = fgets($Datei,9999);
$Zeile3 = fgets($Datei,9999);
fclose($Datei);
}

Damit würdest Du dann in den Variablen Zeile1 bis zeile 3 die ersten 3 Zeilen der CSV datei haben.

um an die gewünschten Spalten zu kommen wende dann die String-Funktion: "explode" an.

ich hoffe das reicht als Erklärung.
Mit Zitat antworten
  #3 (permalink)  
Alt 05-03-2008, 02:43
onkel_jonny
 Newbie
Links : Onlinestatus : onkel_jonny ist offline
Registriert seit: Mar 2008
Beiträge: 5
onkel_jonny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Stub
Wenn Du
1. immer nur die ersten 3 zeilen einlesen möchtest und
2. immer sicher sein kannst, das mind. 3 zeilen in der datei stehen

dann brauchst du nicht die ganze datei einlesen sondern nur 3 Zeilen

Beispiel:
if (file_exists($PfadDatei)) {
$Datei = fopen($PfadDatei,"r");
$Zeile1 = fgets($Datei,9999);
$Zeile2 = fgets($Datei,9999);
$Zeile3 = fgets($Datei,9999);
fclose($Datei);
}

Damit würdest Du dann in den Variablen Zeile1 bis zeile 3 die ersten 3 Zeilen der CSV datei haben.

um an die gewünschten Spalten zu kommen wende dann die String-Funktion: "explode" an.

ich hoffe das reicht als Erklärung.

Ja, das hat mir sehr weitergeholfen. Obwohl ich erstmal garnicht wusste, was du meinst. Es funktioniert jetzt mit nem bischen nachlesen. Für alle die es interessiert hier der komplette Code:

<?php

if (file_exists('../news/news.csv')) {
$Datei = fopen('../news/news.csv','r');
$Zeile1 = fgets($Datei,9999);
$Zeile2 = fgets($Datei,9999);
$Zeile3 = fgets($Datei,9999);
$array1 = explode(";",$Zeile1);
$array2 = explode(";",$Zeile2);
$array3 = explode(";",$Zeile3);
fclose($Datei);
}

echo $array1[0]."<br>".$array1[1]."<br><br>";
echo $array2[0]."<br>".$array2[1]."<br><br>";
echo $array3[0]."<br>".$array3[1]."<br><br>";

?>

Vielen Dank nochmal!
Mit Zitat antworten
  #4 (permalink)  
Alt 05-03-2008, 12:12
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

So im Stil: Von hinten durch die Brust ins Auge. Du warst ja mit deiner eigenen Lösung viel näher dran:
PHP-Code:
<?php
$handle 
fopen('news.csv''r');
$i 0;
while (
$data fgetcsv($handle30000';') && $i 3){
    echo 
"$data[0]<br />$data[1]<br />\n";
    
$i ++;
}
fclose($handle);
?>
__________________
Gruss
H2O
Mit Zitat antworten
  #5 (permalink)  
Alt 06-03-2008, 01:53
onkel_jonny
 Newbie
Links : Onlinestatus : onkel_jonny ist offline
Registriert seit: Mar 2008
Beiträge: 5
onkel_jonny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von H2O
So im Stil: Von hinten durch die Brust ins Auge. Du warst ja mit deiner eigenen Lösung viel näher dran:
PHP-Code:
<?php
$handle 
fopen('news.csv''r');
$i 0;
while (
$data fgetcsv($handle30000';') && $i 3){
    echo 
"$data[0]<br />$data[1]<br />\n";
    
$i ++;
}
fclose($handle);
?>
Geht nicht. Zeigt nur:

<br /><br />
<br /><br />
<br /><br />

also ohne Daten.
Mit Zitat antworten
  #6 (permalink)  
Alt 06-03-2008, 09:04
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Dann zeig mal die ersten paar Zeilen deiner "news.csv".
Und "<br />" wird sicher nicht so angezeigt, ausser du startest PHP von der Command-Line.
__________________
Gruss
H2O
Mit Zitat antworten
  #7 (permalink)  
Alt 07-03-2008, 05:36
onkel_jonny
 Newbie
Links : Onlinestatus : onkel_jonny ist offline
Registriert seit: Mar 2008
Beiträge: 5
onkel_jonny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von H2O
Dann zeig mal die ersten paar Zeilen deiner "news.csv".
Und "<br />" wird sicher nicht so angezeigt, ausser du startest PHP von der Command-Line.

Das ist die news.csv:

20.08.2008;test1;test2;sgdsadgdsga
22.09.2008;test3;test4;aghtrhhdfh
20.10.2008;test5;test6;sadhshhh
22.11.2008;test7;test8;sahdghsh
20.12.2008;test9;test10;adddgsdsd
22.01.2009;test11;test12;sdadfdga dgdgg

und

<br /><br />
<br /><br />
<br /><br />

sehe ich dann im quelltext.
Mit Zitat antworten
  #8 (permalink)  
Alt 07-03-2008, 08:22
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

while ($data = fgetcsv($handle, 30000, ';') && $i < 3){
muss:
while (($data = fgetcsv($handle, 30000, ';')) && $i < 3){
heissen
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Mit Zitat antworten
  #9 (permalink)  
Alt 07-03-2008, 19:44
onkel_jonny
 Newbie
Links : Onlinestatus : onkel_jonny ist offline
Registriert seit: Mar 2008
Beiträge: 5
onkel_jonny ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von MelloPie
while ($data = fgetcsv($handle, 30000, ';') && $i < 3){
muss:
while (($data = fgetcsv($handle, 30000, ';')) && $i < 3){
heissen
Ahhhh, jetzt funktioniert es. Danke!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:55 Uhr.