WinFuture-Forum.de: Txt-datei Zeilenweise Lesen? - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Txt-datei Zeilenweise Lesen?


#1 Mitglied ist offline   K050V4 

  • Gruppe: aktive Mitglieder
  • Beiträge: 788
  • Beigetreten: 13. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Stuttgart
  • Interessen:(X)HTML<br />CSS2+<br />PHP 4/5<br />MySQL 5<br />Symfony 1.2+<br />JavaScript / AJAX<br />jQuery<br />C++<br />C#<br />Java<br />...

geschrieben 24. Juni 2006 - 11:56

Hallo mal wieder ^^

Ich habe eine Frage an euch und ich hoffe ihr könnt sie mir beantworten :)

Ich habe mir ein Uploadscript gebatelt. Der user Wählt eine Datei aus, gibt sein Namen an und eine Beschreibung der Datei. Diese Daten werden in einer txt-Datei gespeichert in Form von

<tr><td>Link zur Datei</td><td>Beschreibung</td><td>Username</td></tr>


Diese Daten werden von einer PHP-Seite so gelesen:

...
<table>
<?php readfile('daten.txt'); ?>
</table>
...


Nun zur Frage:

Wie kann ich die txt-Datei zeilenweise lesen?

Dieser Beitrag wurde von keny bearbeitet: 24. Juni 2006 - 11:58

Zitat

"In der Welt des Erkennbaren ist die Idee des Guten die höchste." - Platon

Spritify! Easy CSS-Sprite-Generator | Albanisch Deutsch Wörterbuch
0

Anzeige



#2 Mitglied ist offline   stefanra 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.208
  • Beigetreten: 13. September 04
  • Reputation: 1

geschrieben 24. Juni 2006 - 12:00

Einfach einlesen und nach "\n" splitten.
0

#3 Mitglied ist offline   K050V4 

  • Gruppe: aktive Mitglieder
  • Beiträge: 788
  • Beigetreten: 13. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Stuttgart
  • Interessen:(X)HTML<br />CSS2+<br />PHP 4/5<br />MySQL 5<br />Symfony 1.2+<br />JavaScript / AJAX<br />jQuery<br />C++<br />C#<br />Java<br />...

geschrieben 24. Juni 2006 - 12:25

Ja schön und gut aber ich möchte dan z.B.: Zeile 56 löschen. Wie bekomm ich das hin?

Den Code hab ich schon:

<?
 $datei=fopen("daten.txt","r");
  
 while($zeile=fgets($datei,1024)) {
  echo "$zeile<br>";
 } 

 fclose($datei);
?>


Wie kann ich eine Variable z.B.: für Zeile 56 machen?

Mit der Funktion müsste das doch gehen oder?:
for($i=0; $i<1000; $i++) { 
echo $zeile[$i]; 
echo "<br>"; 
}

Zitat

"In der Welt des Erkennbaren ist die Idee des Guten die höchste." - Platon

Spritify! Easy CSS-Sprite-Generator | Albanisch Deutsch Wörterbuch
0

#4 _rjchio_

  • Gruppe: Gäste

geschrieben 24. Juni 2006 - 15:25

Muss es als HTML gespeichert werden? Viel einfacher geht es mit Arrays in einem PHP-File...

MfG rjchio
0

#5 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 24. Juni 2006 - 15:54

@richio: du meinst sicher die funktion file()
I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#6 _rjchio_

  • Gruppe: Gäste

geschrieben 24. Juni 2006 - 16:03

Wäre sicher eine Möglichkeit, ich dachte aber an etwas anderes:
<?php

$array = array("blabla", "blabla", "blabla", "blabla");

$file = array_to_string($array, "array", true, true);

$fp = fopen();
fwrite($fp, $file);
fclose($fp);

function array_to_string($array, $var, $format = true, $php = false, $level = 0) {
	  if ($php == true && $level == 0) $string .= ($format == true) ? "<?php\n\n" : "<?php ";
	  if ($level == 0) $string .= ($format == true) ? "\$$var = " : "\$$var=";
	  $string .= ($format == true) ? "array (\n" : "array(";
	  $i = 0;
	  foreach ($array as $key => $value) {
			if (is_string($key)) $new_key = "'".addslashes($key)."'";
			elseif (is_int($key)) $new_key = $key;
			if (is_array($value)) {
				  $new_level = $level + 1;
				  $new_value = array_to_string($value, $var, $format, $php, $new_level);
			}
			else {
				  if (is_string($value)) $new_value = "\"".addslashes($value)."\"";
				  elseif (is_int($value)) $new_value = $value;
				  elseif (is_bool($value)) $new_value = ($value == true) ? "true" : "false";
			}
			if ($i != 0) $string .= ($format == true) ? ",\n" : ",";
			if ($format == true) {
				  for ($l = 0; $l <= $level; $l++) {
						$string .= "\t";
				  }
			}
			$string .= ($format == true) ? "$new_key => $new_value" : "$new_key=>$new_value";
			$i++;

	  }
	  if ($format == true) {
			$string .= "\n";
			for ($l = 1; $l <= $level; $l++) {
				  $string .= "\t";
			}
	  }
	  $string .= ($level == 0) ? ");" : ")";
	  if ($php == true && $level == 0) $string .= ($format == true) ? "\n\n?>" : " ?>"; //<?
	  return $string;
}

?>

Die Funktion hab ich selbst geschrieben und damit kann man ganz einfach und vor allem übersichtlich Arrays in Dateien speichern...

Um wieder an das Array zu kommen, braucht es nur ein include() - sollte also einiges schneller als file() sein.

MfG rjchio
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0