![]() |
[PHP][Gelöst] *.html Dateien auslesen und verarbeiten :(
hi leutz, hab ein riesen-problem! :'(
also... ich muss aus einem Ordner alle HTML-Dateien auslesen. so... diese sehen wie folgt aus, Beispiel: 2005-05-01.html also: YYYY-MM-DD.html so... wie mache ich dass, dass ich dann alle solche dateien (und nur solche!) auslese und dann zu jedem in chronologischr Reihenfolge einen Link erstelle? Bin wirklich am Verzweifeln, das ist nämlich für einen Auftrag und der sollte schnellstmöglich beendet werden :( Noch schnell ein Beispiel: Im Ordner enthalten: 2005-05-01.html | 2005-06-23.html sollte dann in ungefähr so aussehen: News vom 23.6.2005 [2005-06-23.html] News vom 1.5.2005 [2005-05-01.html] |
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
Zitat:
|
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
och, falsche Rubrik, falsche Antwort, sorry.
|
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
Zitat:
|
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
Zitat:
|
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
Mal etwas Code:
Code:
Nun hast du in $FileNames alle Dateinamen ohne Extension, aber nur von den Dateien, die auf .html enden (*.html).
<?php
$hDir = "ordner/"; // Dein Ordner $hHandle = opendir($hDir); // Handle zum Ordner $FileNames = Array(); // Array initialisieren // In einer Schleife alle Dateien holen, die zugelassen sind while($file == readdir($hHandle) && $file != "." && $file != ".." && substr($file, -5) == ".html" && is_file($file)) { $FileNames[] = substr($file, strlen($file)-5); // Dateinamen in Array einlesen } closedir($hHandle); // Handle wieder schließen ?> Das kannst du nun umbauen und dadurch die Ausgabe erzeugen. air |
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
Also ich würds so machen:
Code:
^^Nicht getstet, also bestimmt Fehler drin, sollte aber so funktionieren.
<?php
//öffnen des ordners $handle=opendir("derordner/"); $daten = array(); //auslesen der dateien while ($file = readdir($handle)) { //datum aus dateinamen filtern $datum = split('-',$file); $jahr = $datum[0]; $monat = $datum[1]; $tag1 = $datum[2]; $tag = $tag[0].$tag[1]; //timestamp erzeugen $timestamp = mktime(0,0,0,$monat,$tag,$jahr); //ab ins array :) $daten[] = $timestamp; } closedir($handle); //sortieren sort($daten); reset($daten); //Array-daten zählen $gesammt = count($daten); //ausgeben for($i=0; $i<$gesammt; $i++) { $tag = date('j',$daten[$i]); $monat = date('n',$daten[$i]); $jahr = date('Y',$daten[$i]); $dateiname = $jahr.'-'.$monat.'-'.$tag.'.html'; echo '[url="'.$dateiname.'"]News vom '.$tag.'.'.$monat.'.'.$jahr.'[/url] '; } ?> |
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
mensch, ihr seid einfach genial!
ich werds dann gleich mal ausprobieren! :) |
Re: [PHP] *.html Dateien auslesen und verarbeiten :(
Zum Testen, ob die Datei dem Schema folgt, (und dann auch gleich zum splitten) könnte man auch Reguläre Audrücke verwenden:
etwa so:
Code:
LG
//while...
if(preg_match("/([0-9]{4})\-([0-9]{2})\-([0-9]{2})\.html/", $file, $treffer)) { echo "News vom {$treffer[3]}.{$treffer[2]}.{$treffer[1]} [{$file}]"; } //... |
Re: [PHP][Gelöst] *.html Dateien auslesen und verarbeiten :(
gut, musste zwar noch ein wenig herumtüfteln, aber schließlich kam das raus:
Code:
funktioniert einwandfrei :thumb:
<?php
//öffnen des ordners $handle=opendir("news/"); $daten = array(); //auslesen der dateien while ($file = readdir($handle)) { if(preg_match("/([0-9]{4})\-([0-9]{2})\-([0-9]{2})\.html/", $file, $treffer)) { //datum aus dateinamen filtern $datum = split('-',$file); $jahr = $datum[0]; $monat = $datum[1]; $tag = $datum[2]; //$tag = $tag[0].$tag[1]; //timestamp erzeugen $timestamp = mktime(0,0,0,$monat,$tag,$jahr); //ab ins array :) $daten[] = $timestamp; } } closedir($handle); //sortieren rsort($daten); reset($daten); //Array-daten zählen $gesammt = count($daten); $tag2 = array(); $monat = array(); $jahr = array(); //ausgeben for($i=0; $i<$gesammt; $i++) { $tag2[$i] = date('d',$daten[$i]); $monat[$i] = date('m',$daten[$i]); $jahr[$i] = date('Y',$daten[$i]); $dateiname = $jahr[$i].'-'.$monat[$i].'-'.$tag2[$i].'.html'; echo "<a href='news/".$dateiname."'>News vom ".$tag2[$i].". ".$monat[$i]."."; } ?> |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz