Administrator Startseite

Apple

iOS, iTunes, Mac OS X

Entwicklung

Assembler, BASIC, Batch & Shell, Bibliotheken & Toolkits, CSS, C und C++, Datenbanken, HTML, IDE & Editoren, Installation, Java, JavaScript, KiXtart, Lizenzierung, Pascal & Delphi, Perl, PHP, Python, VB for Applications, Visual Studio@, Webentwicklung, XML

Hardware

Benchmarks, Cluster@, CPU, RAM, Mainboards, Drucker und Scanner, Festplatten, Raid, Grafikkarten & Monitore, LAN, WAN, Wireless@, Multimedia & Zubehör, Notebook & Zubehör, Router & Routing@, SAN, NAS, DAS, Server-Hardware, Sonstige Peripheriegeräte, Speicherkarten, Switche und Hubs

Internet

Blogs, CMS, Domain Registrierung, E-Books, E-Business, E-Mail, Flatrates, Hosting & Housing, Informationsdienste, Instant Messaging, Onlinedienste, SEO, Server, Soziale Netzwerke, Utilities, Webbrowser

Linux

Apache Server, Debian, Desktop, Netzwerk, OpenOffice, LibreOffice, RedHat, CentOS, Fedora, Samba, Suse, Tools & Utilities, Ubuntu, Userverwaltung

Microsoft

Exchange Server, Hyper-V@, Installationsprobleme, Netzwerk, Office, Outlook & Mail, Systemdateien, Tools & Utilities, Userverwaltung, Visual Studio@, Windows 7, Windows 8, Windows Phone, Windows Server, Windows Vista, Windows XP

Multimedia

Audio, Digitiales Fernsehen, Grafik, Icons, Schriftarten, Video

Netzwerke

Cluster@, DNS, DSL, VDSL, Groupware, Grundlagen, ISDN & Analoganschlüsse, LAN, WAN, Wireless@, Monitoring, Netzwerkmanagement, Netzwerkprotokolle, Router & Routing@, TK-Netze & Geräte, UMTS, EDGE & GPRS, Voice over IP

Off Topic

Administrator.de Feedback, Humor (lol), Papierkorb

Sicherheit

Backup, Erkennung und -Abwehr, Firewall, Grundlagen, Informationsdienste, Rechtliche Fragen, Sicherheits-Tools, Tipps & Tricks, Verschlüsselung & Zertifikate, Viren und Trojaner

Sonstige Systeme

Google Android, MikroTik RouterOS, Novell Netware, Sun Solaris

Virtualisierung

Hyper-V@, KVM, Vmware, Xenserver

Weiterbildung

Aus- und Weiterbildung, Ausland, Schulung & Training, Studentenjobs & Praktikum

Zusammenarbeit

Biete Zusammenarbeit, Suche Projektpartner
Weniger Werbung?
Cover IT-Administrator
In der Juni-Ausgabe des IT-Administrator Magazins dreht sich alles um den Schwerpunkt 'Monitoring & Dokumentation'. So zeigen Ihnen die Redaktion unter anderem, wie die Netzwerküberwachung in heterogenen Umgebungen mit Zenoss funktioniert und auf welchem Weg Sie Leistungsdaten von Windows-Clients mit der PowerShell abfragen. Daneben lesen Sie, wie Sie die I/O-Last auf Ihren Servern im Blick behalten und Ihr Red Hat Enterprise Linux auf Trab bringen. ... mehr
Mitglied: ottscho
13.02.2012 um 07:52 Uhr, 2866 Aufrufe, 6 Kommentare

GELÖSTNeuste Datei in einem Ordner ermitteln

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
Off Topic
Information: Ich wünsche allen Administratoren und die die es noch werden wollen einen wunderschönen SysAdminDay! Ich hoffe eure Anwender denken an euch! Grüße Lenny ... von lenny4me, in Off Topic
Diese Inhalte könnten dich auch interessieren
Batch & Shell
Frage: Hallo erstmal an alle, da ich mich seit kurzem mit Batchprogrammierung beschäftige und bei euch schon sehr viele hervorragende Hinweise zu anderen Problemen dieser Art gefunden habe würde ... von ChocoLoco, in Batch & Shell
Windows Server
Frage: Hallo Zusammen, ich binde per GPO eine Batchdatei ein, die folgendes beinhaltet: mkdir \%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup copy \\serverpfad\verknuepfung.lnk "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup" /Y Jetzt ist es teilweise so, das der Ordner ... von johndoe, in Windows Server
Batch & Shell
Frage: Hallo zusammen, ich bin gerade dabei mir eine BAT-Datei zu basteln um die Profile vom Firefox per "Knopfdruck" kopieren zu lassen, dabei hänge ich gerade an eine besch. ... von ghoppe, in Batch & Shell
Windows Server
Frage: Hallo an alle, wir haben auf unserem Server ein Verzeichnis für die Ablage von Word-, Excel-, PDF-Dokumenten & Co. angelegt und für das Netzwerk freigegeben. Die Clients werden ... von Juckie, in Windows Server
Batch & Shell
Frage: Hallo zusammen Da ich nicht besonders gut mit der shell zurecht komme hoffe ich auf eure Unterstützung. Die datei/en haben unterschiedliche Namen (info.vdr oder info.txt) die durchsucht werden ... von Jamesb10, in Batch & Shell
Heiß diskutierte Inhalte
Batch & Shell
Frage: Hallo, ich möchte mir ein einfaches Script basteln, weiß aber nicht richtig weiter Das Script soll jede Nacht 2 Ordner auf eine andere Partition kopieren. Es sollte auf ... von PM-Manuel, in Batch & Shell
Exchange Server
Frage: Hallo Fachleute, auf einem Exchange 2013 der für die Domäne "kunde.de" zuständig ist, möchte ich eine E-Mailadresse, die intern nicht konfiguriert ist, an den externen Webhoster, wo der ... von tommiller, in Exchange Server
Drucker und Scanner
Frage: Hallo Liebe Mitglieder, ich habe die suchfunktion sowie google glaube ich vollständig durch und eröffne daher das ein neues Thema. Ich habe in der Firma insgesamt 15 Drucker ... von Kabu1904, in Drucker und Scanner
Windows Server
Frage: Hallo, Haben hier einen MFC-7360N Multifunktionscenter und muss den auf einem der Terminalserver-Clients (alles Win 2k8 R2 RDP's) einrichten zum scannen. Leider stellt Brother ihr Control Center v4 ... von xseven7, in Windows Server
Netzwerk
Frage: Hallo Forumwelt, ich bin gerade sehr verzweifelt. Ich habe eine Freigabe hier im Netzwerk hängen und finde den Quellordner nicht. (Klingt erstmal unlogisch ist es aber leider nicht) ... von KetschupMajo, in Netzwerk