2010-12-21 1 views
1

Nicht sicher, ob ich diese Frage bearbeiten oder einfach eine andere Frage in einem anderen Beitrag stellen sollte. Mir fällt es schwer, das Gegenteil von dem zu tun, was ich ursprünglich gefragt habe. Wie bekomme ich die "date number" in php? Ich möchte die aktuelle Datumsnummer einer Variablen zuweisen, damit ich sie in meiner Abfrage verwenden kann, um zu vergleichen, was sich bereits in der Datenbank befindet.Format Datum Nummer von Datenbank

Ich kann nicht die SQL Server-Datenbank sehen, aber ich es anschließe mit ODBC und PHP auf einer Linux-Box. Mir wurde gesagt, , dass das Feld "meeting_start" war eine "Date Number". Wenn ich den Wert den "meeting_start" bekomme, sieht das Format so aus.

2010-08-24 20:00:00.000 

muss ich sowohl das Datum und die Zeit, sondern für verschiedene Teile meiner Funktion. Ist gibt es eine Möglichkeit, die Daten für das Datum zu extrahieren und in einer Variablen und dann extrahieren Sie die Daten für die Zeit und speichern auf eine andere Variable. Unten ist ich versuche, einen Stich zu nehmen.

$time_date_data = "2010-08-24 20:00:00.000" 

$meeting_date = get_date($time_date_data); 

$meeting_time = get_time($time_date_data); 

Antwort

3

Sie suchen die date Funktion:

$meeting_date = date('Y-m-d', strtotime($time_date_data)); 
$meeting_time = date('H:i', strtotime($time_date_data)); 

für $time_date_data = '2010-08-24 20:00:00.000', die Sie erhalten:

$meeting_date = '2010-08-24'; 
$meeting_time = '20:00'; 

Sie das Format, indem das erste Argument date() nach den docs ...

hier
+0

danke für deine antwort. Eine weniger Linie, danke! – Denoteone

+0

Vielleicht nicht der Fall, aber eine Funktion zweimal aufrufen ist langsamer als einmal aufrufen und mit einer Variablen :) – Catalin

1

Versuchen:

$stamp=strtotime("2010-08-24 20:00:00.000"); 
$date=date("Y-m-d",$stamp); 
$time=date("H:i:s",$stamp); 

oder:

list($date,$time)=explode(" ","2010-08-24 20:00:00.000"); 
+0

danke für deine antwort – Denoteone

+0

du bist willkommen :) – Catalin

0
$meeting_date = substr($time_date_data, 0, -13); 

$meeting_time = substr($time_date_data,11); 
2

Zwei Optionen ändern können. Sie können dies entweder auf der SQL Server-Seite oder auf der Anwendungsseite tun.

Für SQL: Wenn Sie das Datum wollen nur im Format YYYY/MM/DD, dies tun: nur

SELECT CONVERT(VARCHAR(10), GETDATE(), 111) AS [YYYY/MM/DD] 

Wenn Sie die Zeit möchten, im Format HH: MM: SS, tun dies:

SELECT CONVERT(VARCHAR(8), GETDATE(), 108) 

Alternativ, können Sie dies alles in PHP tun, indem Sie das "Datum" -Funktion, so etwas wie:

$theDate = date("YYYY/MM/DD", strtotime($theFullDate)) 
$theTime = date("HH:MM:SS", strtotime($theFullDate))