Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP - MySQL Zeitformat umwandeln

Frage Entwicklung PHP

Mitglied: Pixelschubser

Pixelschubser (Level 1) - Jetzt verbinden

05.02.2010, aktualisiert 07.02.2010, 7411 Aufrufe, 6 Kommentare

Ich habe in einen meiner MySQL-Tabellen in einer Spalte in einem String folgendes Zeit-Format stehen "20:04 Uhr 26.03.2006". Wie kann ich diese mithilfe eines PHP-Scripts in Timestamp umwandeln?

Die einzigste Idee die ich hätte, ware die einzelnen Werte aus dem string suchen und die Sekunden hochrechnen. Allerdings könnte ich mir vorstellen, dass es wegen den paar Schaltjahren nicht ganz hinhaut.

Gruß
Schubser
Mitglied: Arano
05.02.2010 um 16:21 Uhr
Moin,

PHP-Manual - mktime() berechnet dir aus Zeit- und Datumswerten den entsprechenden Timestamp.
PHP-Manual - date_parse_from_format() ermöglicht es dir unter Angabe eines Formates deine vorhandene Zeichenkette in ihre einzelnen Werte zu zerlegen.


~Arano
Bitte warten ..
Mitglied: Biber
05.02.2010 um 16:32 Uhr
Moin Arano,

Meinst du nicht, dass Pixelschubser nicht vielleicht einen UNIX_TIMESTAMP (Summe Sekunden seit 1.1.1970) oder ähnliches meint?
Anders wäre doch die Philosophie ...
und die Sekunden hochrechnen. Allerdings könnte ich mir vorstellen, dass es wegen den paar Schaltjahren nicht ganz hinhaut.
... vollkommen neben der Spur.

Grüße
Biber
Bitte warten ..
Mitglied: 48507
05.02.2010 um 17:05 Uhr
Zitat von Biber:
Moin Arano,

Meinst du nicht, dass Pixelschubser nicht vielleicht einen UNIX_TIMESTAMP (Summe Sekunden seit 1.1.1970) oder ähnliches
meint?
Anders wäre doch die Philosophie ...
> und die Sekunden hochrechnen. Allerdings könnte ich mir vorstellen, dass es wegen den paar Schaltjahren nicht ganz
hinhaut.
... vollkommen neben der Spur.

Grüße
Biber


Ne, der hat einen String in dem Format "20:04 Uhr 26.03.2006". Datenbank-Design-Fail.
Bitte warten ..
Mitglied: Biber
05.02.2010 um 17:12 Uhr
Moin spytnik,

Zitat von 48507:
Ne, der hat einen String in dem Format "20:04 Uhr 26.03.2006". Datenbank-Design-Fail.

Ja nee... schon klar...

Ich formuliere es mal um:
Bei meinen Batchen habe den Vorteil, dass ich beim Umformatieren ""20:04 Uhr 26.03.2006". in "20060326200400" oder selbst "2006-03-26 20:04:00" eigentlich gar nicht überlegen muss, wann denn neulich mal Schaltjahre waren...

Aber PHP ist da anscheinend etwas komplexer.... neumodisches Krams, GUI-basiertes..*kopfschüttel*

Grüße
Biber
Bitte warten ..
Mitglied: dog
05.02.2010 um 18:36 Uhr
Ja, wo laufen wir denn?

Ich weiß ja nicht wer hier die Idee mit den Schaltjahren ins Spiel gebracht hat (ach, der TO) aber das ist ja vollkommen daneben.
Arano hat den richtigen Tipp schon gegeben: mktime()

01.
<?php 
02.
 
03.
	$in = "20:04 Uhr 26.03.2006"
04.
	 
05.
	if(!preg_match('/^(\d{2}):(\d{2}) Uhr (\d{2})\.(\d{2})\.(\d{4})$/i', $in, $match)) 
06.
		throw new Exception("Ungültiges Format!"); 
07.
	 
08.
	$timestamp = mktime(intval($match[1]), intval($match[2]), 0, intval($match[4]), intval($match[3]), $match[5]); 
09.
 
10.
	var_dump($timestamp); #=> int(1143396240) 
11.
	var_dump(date('Y-m-d H:i:s',$timestamp)); #=> string(19) "2006-03-26 20:04:00" 
12.
?>
Grüße

Max
Bitte warten ..
Mitglied: Pixelschubser
05.02.2010 um 21:26 Uhr
Vielen Dank Max!

Genau so wie ich es wollte.
Bitte warten ..
Ähnliche Inhalte
PHP
PHP MySQL Login (7)

Frage von Yanmai zum Thema PHP ...

PHP
MySQL-Abfrage mit php: Wert + true bzw. false (2)

Frage von tomolpi zum Thema PHP ...

PHP
PHP 5.3 nach PHP 5.6 portieren (5)

Frage von nippon-tussi zum Thema PHP ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Netzwerke
DynDNS Dienst mit Mikrotik Router OS 6.4 (12)

Frage von Mopskiller zum Thema Netzwerke ...

Switche und Hubs
gelöst Cisco 2960x Stacking über mehrere Etagen (12)

Frage von b3scher zum Thema Switche und Hubs ...