SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 25.10.2003, 14:09:16
Benutzerbild von thorben
thorben thorben ist offline
Junior Member
 
Registriert seit: Mar 2003
Ort: Krefeld
Beiträge: 245
thorben eine Nachricht über Yahoo! schicken
*.txt-Dateien aus Verzeichnis auslesen

Guten Tag!

In einem Verzeichnis liegen eine unbestimmte Anzahl an *.txt-Dateien, diese möchte ich auslesen, und die Inhalte der *.txt-Dateien nach Datum sortiert (das neuste ganz oben!) auslesen.
Vielleicht kann mir mal jemand einen Tip geben - ich finde den Anfang nicht.

Danke & schönen Tag.
Thorben.
Mit Zitat antworten
  #2  
Alt 25.10.2003, 20:31:31
Fuchs Fuchs ist offline
Junior Member
 
Registriert seit: Jul 2003
Beiträge: 182
PHP-Code:
<?php

$d 
dir('path/to/txt/files/with/trailing/slash/');
$files = array();
$toEnd '.txt';

while ((
$entry $d->read()) !== false) {

  if (
is_file($d->path.$entry) &&
     (
StrCaseCmp($toEndsubstr($entry, -(strlen($toEnd)))) == 0)) {
    
$files[$entry] = filemtime($d->path.$entry);
  }

}

$d->close();

arsort($files);

foreach(
$files as $name => $timestamp){
    echo 
"$name => ".date('r'$timestamp)."n";
}

?>
Wenn du die Dateiendung case sensitive vergleichen willst (nur .txt nicht .TXT, .TxT etc...) musst du anstatt StrCaseCmp() StrCmp() benutzen.

HTH Andre
Mit Zitat antworten
  #3  
Alt 25.10.2003, 20:47:26
Benutzerbild von thorben
thorben thorben ist offline
Junior Member
 
Registriert seit: Mar 2003
Ort: Krefeld
Beiträge: 245
thorben eine Nachricht über Yahoo! schicken
Danke.
Das funktioniert wunderbar, aber mein Ziel ist es (vielleicht habe ich mich nicht gründlich genug ausgedrückt!), die Inhalte dieser Datei auszulesen, nicht die Dateinamen.
Ich bräuchte quasi die Funktion, die mir dabei hilft, alle Datei hintereinander weg zu öffnen und anzuzeigen.

Danke.
thorben.

Geändert von thorben (25.10.2003 um 20:53:16 Uhr)
Mit Zitat antworten
  #4  
Alt 25.10.2003, 22:05:59
nino nino ist offline
Anfänger
 
Registriert seit: Oct 2003
Ort: Kiel
Beiträge: 46
Ich bin mir nicht sicher, aber so könnte es vielleicht gehen

PHP-Code:
<?php

$d 
dir('path/to/txt/files/with/trailing/slash/');
$files = array();
$toEnd '.txt';

while ((
$entry $d->read()) !== false) {

  if (
is_file($d->path.$entry) &&
     (
StrCaseCmp($toEndsubstr($entry, -(strlen($toEnd)))) == 0)) {
    
$files[$entry] = filemtime($d->path.$entry);
  }

}

$d->close();

arsort($files);

foreach(
$files as $name => $timestamp){

//----------Liest den Inhalt der Datei----------
$str fread ($namefilesize($name));
$str nl2br($str);
//----------------------------------------------

echo "$name => ".date('r'$timestamp)."n";

//-------------Gibt den Inhalt aus--------------
echo "$str";
//----------------------------------------------

}

?>
Gruß nino
__________________
Sie werden auch dich glücklich machen!
www.billige-studenten.de
Mit Zitat antworten
  #5  
Alt 25.10.2003, 22:21:57
Fuchs Fuchs ist offline
Junior Member
 
Registriert seit: Jul 2003
Beiträge: 182
mittels readfile() kannst sie 1:1 zum Client ausgeben.
Mit Zitat antworten
  #6  
Alt 25.10.2003, 22:43:53
Benutzerbild von thorben
thorben thorben ist offline
Junior Member
 
Registriert seit: Mar 2003
Ort: Krefeld
Beiträge: 245
thorben eine Nachricht über Yahoo! schicken
Puh, ziemlich kompliziert für jemanden, der sich noch nicht so gut auskennt.
Danke.

Bekomme jetzt folgende Fehlermeldung:

Warning: fread(): supplied argument is not a valid File-Handle resource in /www/htdocs/qw/index.php on line 122
test.txt => Sat, 25 Oct 2003 21:42:21 +0200

(test.text ist die Datei, die er in dem vorgegebenen Verzeichnis findet.)

Ist da was falsch gelaufen?
Mit Zitat antworten
  #7  
Alt 25.10.2003, 23:41:35
Benutzerbild von Jürg
Jürg Jürg ist offline
Junior Member
 
Registriert seit: May 2003
Ort: CH Zürich
Alter: 66
Beiträge: 352
Jürg eine Nachricht über Skype™ schicken
Bitte schreib doch immer, was in der betreffenden Programmzeile steht, am Besten auch die, die vor- und nachher stehen. Also Zeile 121 - 123.
Damit hilfst Du allen.
__________________
www.zudila.ch
Mit Zitat antworten
  #8  
Alt 26.10.2003, 00:02:52
Fuchs Fuchs ist offline
Junior Member
 
Registriert seit: Jul 2003
Beiträge: 182
Zitat:
Original geschrieben von Jürg
Bitte schreib doch immer, was in der betreffenden Programmzeile steht, am Besten auch die, die vor- und nachher stehen. Also Zeile 121 - 123.
Damit hilfst Du allen.
Warscheinlich der Code von Nino. Denn der Code von Nino oeffnet die Datei nicht. fread() erwartet als 1. Argument naemlich ein Hanlde (von fopen). Also schreib doch bitte so etwas in der Art:

PHP-Code:
<?php
foreach ($file as $filename => $timestamp) {
  echo 
"Letzte aenderung der Datei: ".date('r'$timestamp);
  
readfile($pathToTxt.$filename);
}
?>
Mit Zitat antworten
  #9  
Alt 26.10.2003, 13:02:05
nino nino ist offline
Anfänger
 
Registriert seit: Oct 2003
Ort: Kiel
Beiträge: 46
Verdammt, hab tatsächlich vergessen die Datei vorher zu öffnen, sorry!

Gruß nino
__________________
Sie werden auch dich glücklich machen!
www.billige-studenten.de
Mit Zitat antworten
  #10  
Alt 26.10.2003, 15:16:02
Benutzerbild von thorben
thorben thorben ist offline
Junior Member
 
Registriert seit: Mar 2003
Ort: Krefeld
Beiträge: 245
thorben eine Nachricht über Yahoo! schicken
Danke für Eure große Mühe, aber es ist bestimmt total quatschig, jeden Beitrag in eine einzelne Textdatei zu schreiben, gel.
Deswegen versuche ich es mittels Arrays, vielleicht habe ich da mehr Chancen, meine Ziele zu verwirklichen.

Thorben.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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 aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:03:45 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt