Archiv verlassen und diese Seite im Standarddesign anzeigen : txt
Hi,
habe eine txt, in der pro zeile 5 einträge mit einem ; als trennzeichen.
jetzt will ich alles ohne den trennzeichen ausgeben.
je die 5 einträge auf eine zeile und das für alle zeilen.
wie geht das?
Maik
undefined
22-06-2005, 20:47
Explode ist dein Freund ;)
<?php
$out = array();
$datei = file( "Datei.txt" );
foreach ( $datei AS $z ) {
$out[] = explode( ";", $z );
}
echo "<pre>";
var_dump( $out );
echo "</pre>";
?>
das mit explode wusste ich...
jetzt bekomme ich das angezeigt:
array(9) {
[0]=>
array(5) {
[0]=>
string(4) "Eintrag 1/Zeile 1"
[1]=>
string(28) "E2/Z1"
[2]=>
string(3) "E3/Z1"
[3]=>
string(2) "E4/Z1"
[4]=>
string(29) "E5/Z1
"
}
[1]=>
array(1) {
[0]=>
string(30) "E5/Z1
"
}
[2]=>
array(2) {
[0]=>
string(37) "E5/Z1
"
[1]=>
string(1) "
"
}
[3]=>
array(5) {
[0]=>
string(4) "E1/Z2"
[1]=>
string(28) "E2/Z2"
[2]=>
string(3) "E3/Z2"
[3]=>
string(2) "E4/Z2"
[4]=>
string(90) "E5/Z2
"
}
[4]=>
array(1) {
[0]=>
string(59) "E%/Z2
"
}
[5]=>
array(2) {
[0]=>
string(9) "E5/Z2
"
[1]=>
string(1) "
"
}
[6]=>
array(6) {
[0]=>
string(4) "E1/Z3"
[1]=>
string(12) "E2/Z3"
[2]=>
string(4) "E3/Z3"
[3]=>
string(4) "E4/Z3"
[4]=>
string(8) "E5/Z3
"
[5]=>
string(1) "
"
}
[7]=>
array(6) {
[0]=>
string(4) "E1/Z4"
[1]=>
string(12) "E2/Z4"
[2]=>
string(4) "E3/Z4"
[3]=>
string(4) "E4/Z4"
[4]=>
string(8) "E5/Z4
"
[5]=>
string(1) "
"
}
[8]=>
array(6) {
[0]=>
string(4) "E1/Z5"
[1]=>
string(28) "E2/Z5"
[2]=>
string(3) "E3/Z5"
[3]=>
string(2) "E4/Z5"
[4]=>
string(20) "E5/Z5
"
[5]=>
string(1) "
"
}
}
Das waren mal 5 Zeilen in der txt...
soll aber so ausgegebn werden:
Z1: E1 E2 E3 E4 E5
Z2: E1 E2 E3 E4 E5
Z3: E1 E2 E3 E4 E5
Z4: E1 E2 E3 E4 E5
Z5: E1 E2 E3 E4 E5
Was nun?
Gruß
Maik
undefined
23-06-2005, 06:16
soll aber so ausgegebn werden:
Na dann Formatiere doch deine Ausgabe :rolleyes:
und was ist mit dem:
}
[1]=>
array(1) {
[0]=>
string(30) "
Wie bekomme ich das alles weg?
michael.sprick
23-06-2005, 08:57
Du kannst doch einfach das Trennzeichen mit einem regulären Ausdruck gegen ein Leerzeichen ersetzen... wozu das explode?
<?PHP
$String = 'Dieser;String;ist;durch;Semikolon;getrennt';
$String = preg_replace('/;/',' ',$String);
echo $String;
?>
Es gibt auch noch jede Menge andere regex Funktionen - ein Blick auf php.net verschafft Dir Überblick...
und was ist mit dem:
}
[1]=>
array(1) {
[0]=>
string(30) "
Wie bekomme ich das alles weg?
Indem du versuchst das Coding zu verstehen, endlich mal die Onlinehilfe liest, oder einfach das var_dump() weglässt... :rolleyes:
fgetcsv hilft dir vielleicht auch weiter... http://php.net/fgetcsv
Gruß,
Gaert
Danke michael.sprick!
Das ist das richtige!
Gruß
Maik
undefined
23-06-2005, 10:42
Indem du versuchst das Coding zu verstehen, endlich mal die Onlinehilfe liest, oder einfach das var_dump() weglässt... :rolleyes:
fgetcsv hilft dir vielleicht auch weiter... http://php.net/fgetcsv
Gruß,
Gaert
:D Gaert gib es auf, Das habe ich schon vor langem getan, wenn ich wie hier merke das einer die Manual nicht lesen wiel oder kann einfach d? sterben lassen :D
dazu gibts doch das forum, wenn ich mit dem manual nicht klar komme, oder was nicht verstehe daraus, dann frage ich hier oder mach ich da was falsch?
außerdem kann ich ja in dem manual nicht eingeben, "es soll die datei ausgelesen werden und gib mir das dann so aus..." nee, dazu muss man wissen nach was für einem Befehl man sucht und wenn man das nicht weis, is man am Arsch, da nützt das manual auch nichts!!!
du könntest aber zum Beispiel nur nach stichwörtern wie "csv" suchen, wo du sicher bei der Suche mehr Erfolg hättest, als wenn du einen Roman über dein Problem schreibst und dannach suchst ;)
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.