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
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken |
27.07.2003, 23:57:36
|
Anfänger
|
|
Registriert seit: Mar 2003
Alter: 54
Beiträge: 89
|
|
neueste dateien
also ich hab in einem ordner dateien, es werden hin und wieder neue dateien angelegt, die ich mit php dann weiterverarbeiten will.
ich will dem script nicht mitteilen müssen, wie die neueste datei heisst und so.
kann ich irgendwas tun, dass die neueste datei gefunden und geöffnet werden kann?
|
28.07.2003, 09:19:14
|
|
Die funktion filectime liefert das Datum der letzten Änderung einer Datei. Also einfach alle Dateien durchlaufen und mit filectime prüfen welche als letztes aktualisiert worden ist!
|
28.07.2003, 11:28:45
|
Anfänger
|
|
Registriert seit: Mar 2003
Alter: 54
Beiträge: 89
|
|
ok, soweit so gut, ich hab nur keine funktion gefunden, die mit zb alles dateinamen eines ordners zb in ein array schreiben kann, ich weiss nämlich nicht, wie so eine neu angelegte heisst. ich weiss nur, dass ich die neueste datei öffnen und lesen will. oder kann man sich da was einfallen lassen?
hier das format des dateinamens:
KillLog-27.07.2003-3.txt
also einmal KillLog- , dann das datum, an dem die angelegt wurde, dann das - und vor dem .txt noch ne laufende nummer, wenn man an einem tag mehrere dateien anlegt.
ist ja dann möglich, mit file_exist via schleife zu gucken, ob so eine da is...
wenn jemand ne bessere idee hat, melden..
|
28.07.2003, 11:35:13
|
|
PHP-Code:
$handle = opendir("Pfad_zu_den_dateien")
while($datei = readdir($handle)) {
if(is_file($datei) && $datei != '.' && $datei != '..')) {
echo $datei . '<br />';
}
}
closedir()
Damit durchläufst Du alle Dateien im Ordner. Kannst dann die Dateinamen ausgeben (wie im Bsp) oder in einen Array schreiben, oder oder oder ... ;-)
|
28.07.2003, 11:40:26
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
PHP-Code:
$dh=opendir('./');
while ($filename=readdir($dh)) {
if (substr($filename, strrpos($filename, '.'), 4)=='.txt') {
$temp=explode('.', substr($filename, strpos($filename, '-'), strrpos($filename, '-')-1));
$arr[$temp[2].$temp[1].$temp[0]]=$filename;
}
}
closedir($dh);
ksort($arr); // oder krsort() - darf ausprobiert werden
echo reset($arr);
Edit: Da war ich wohl wirklich mal zu langsam....
|
28.07.2003, 13:40:52
|
Anfänger
|
|
Registriert seit: Mar 2003
Alter: 54
Beiträge: 89
|
|
jo thx, das hilft mir erstmal weiter.
wieso hab ich das eigentlich "stringverarbeitung" genannt?
ajo, hier solche dinge kommen da drin vor:
28.07.2003 12:45:59 Birdy / himself
28.07.2003 12:46:15 awh / Birdy / Grenade
ich würd nun gerne so eine zeile in eine variable packen, und dann aufteilen.
wenn ich das richtig sehe, gehts so, oder?:
Code:
$arr=explode(' ', $zeile);
|
28.07.2003, 13:44:53
|
SELFPHP Guru
|
|
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 54
Beiträge: 4.748
|
|
Joa. Korrekt.
Nur hast Du das Problem, dass "awh / Birdy / Grenade" auch Leerzeichen enthält.
Also besser mit substr() von Zeichen 0 bis zum ersten Leerzeichen auslesen und das dann entfernen. Dann wieder vom Zeichen 0 bis zum ersten Leerzeichen auslesen und das dann entfernen. Der Rest ist halt - hm - der Rest halt.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 08:05:23 Uhr.
|