Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBASICBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDomain RegistrierungDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetiOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal & DelphiPerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige PeripheriegeräteSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideoViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows NetzwerkWindows PhoneWindows ServerWindows SystemdateienWindows ToolsWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Weniger Werbung?
Cover IT-Administrator
Das Monitoring der IT-Umgebung steht im März auf der Agenda des IT-Administrator Magazins. So lesen Sie in der Ausgabe, wie Sie virtualisierte Umgebungen mit Linux-Appliances überwachen. Außerdem erfahren Sie, was Exchange Server 2013 an Bordmitteln für das Monitoring zu bieten hat. In den Produkttests wirft die Redaktion einen Blick auf iQSol PowerApp - einer extrem flexiblen USV-Steuerung, die granular Serverdienste herunter- und wieder hochfahren kann. ...
GELÖST

Neuste Datei in einem Ordner ermitteln

Frage Entwicklung PHP

Mitglied: ottscho

ottscho (Level 2) - Jetzt verbinden

13.02.2012 um 07:52 Uhr, 3481 Aufrufe, 6 Kommentare

Guten Morgen,

ich lese eine CSV Datei aus und übermittle die Daten an einen Onlineshop.
Nun erstellt das ERP automatisch den CSV-Export und hängt hinter den normalen Namen noch Datum und Uhrzeit.

Ich habe also in meinem Ordner mehrere CSV Dateien welche z.B. so aussehen:

Exportwebshop_20120111_111539_complete.csv
Exportwebshop_20120114_181150_complete.csv

etc.

Der ERP Hersteller verlangt 1000€ um den Dateinamen zu ändern. Daher wollten wir das so lassen und das PHP Script, welches den Import in den Shop macht sollte immer nur die aktuellste CSV einlesen.

Nun sehe ich zwei Möglichkeiten:

1.) Man zerlegt den Dateinamen und schreibt Datum+Zeit zusammen. Die die höchste Zahl ist somit die neuste CSV Datei.
2.) Bei PHP gibt es ein Funktion um das Erstellungs-/Änderungsdatum zu ermitteln.

Habt ihr schon mal was in der Art gemacht?
Wie würdet ihr es machen?

Danke für eure Tipps

Gruß
ottscho
Mitglied: StefanKittel
13.02.2012 um 09:35 Uhr
Hallo,

warum so kompliziert?

Die Datei die Du einlesen möchtest hat doch immer das aktuelle Datum?
Also machst Du ein Dir auf "*20120214*.csv" und fertig.

Stefan
Bitte warten ..
Mitglied: ottscho
13.02.2012 um 10:38 Uhr
Hi Stefan,

ich wusst nicht dass das geht ;)

Also meinst du einfach so:

$handle = fopen ("transfer/*20120214*.csv","r");
Bitte warten ..
Mitglied: StefanKittel
13.02.2012 um 11:28 Uhr
Hallo,

na fast.

Siehe
http://php.net/manual/de/class.dir.php

So müßte es sein zum auflisten und da kommt ja nur eine Datei zurück.
$d = dir("/etc/php5/*20120214*.csv");

Stefan
Bitte warten ..
Mitglied: ottscho
13.02.2012 um 12:02 Uhr
Zitat von StefanKittel:
Hallo,

na fast.

Siehe
http://php.net/manual/de/class.dir.php

So müßte es sein zum auflisten und da kommt ja nur eine Datei zurück.
$d = dir("/etc/php5/*20120214*.csv");

Stefan

HI Stefan,

das geht so leider nicht.

Sobald ich mehr als nur den Pfad angeben, bekomme ich kein Rückgabewert.

Gruß
ottscho
Bitte warten ..
Mitglied: nxclass
13.02.2012 um 12:04 Uhr
01.
$dateiname = max(  $liste_der_Dateinamen );
das sollte auch gehen.

EDIT:
Bei PHP gibt es ein Funktion um das Erstellungs-/Änderungsdatum zu ermitteln.
aber sicher doch: http://php.net/manual/en/function.filemtime.php
Bitte warten ..
Mitglied: ottscho
13.02.2012 um 12:11 Uhr
Habe es auf die schnelle nun so:

01.
$handle=opendir ("transfer"); 
02.
echo "Verzeichnisinhalt:<br>"; 
03.
while ($datei = readdir ($handle)) { 
04.
  if(strpos($datei,"20120213")!==false) echo $datei."<br />"; 
05.
06.
closedir($handle);

Funktioniert. Aber ist wohl nicht die schönste Möglichkeit...

Danke euch
Bitte warten ..
Neuester Wissensbeitrag
Batch & Shell
GELÖST Batch: Ordner auf Datei überprüfen (4)

Frage von donmanolito zum Thema Batch & Shell ...

Windows 7
Datei von USB-Stick in Passwort geschützen Ordner kopieren (5)

Frage von Schnee2000 zum Thema Windows 7 ...

Windows Systemdateien
GELÖST Batch Datei- Dateien kopieren in verschiedene Ordner, Pfad aus Dateiname (2)

Frage von 11benny86 zum Thema Windows Systemdateien ...

Heiß diskutierte Inhalte
Vmware
VirtualBox - Kali Linux - Zugriff auf WLAN Adapter (17)

Frage von citroendsvier zum Thema Vmware ...

Backup
Festplattenwechsler statt Bandwechsler? (15)

Frage von Brennerlein zum Thema Backup ...

Netzwerkgrundlagen
WNR1000v3 Subnetz (13)

Frage von ipconfig zum Thema Netzwerkgrundlagen ...

LAN, WAN, Wireless
Umbau Heimnetz auf pfsense mit VDSL, Telekom Entertain und VoIP so sinnvoll? (12)

Frage von Shutterfly zum Thema LAN, WAN, Wireless ...