2016-06-08 12 views
1

Ich arbeite an einem WordPress-Plugin, mit dem der Benutzer eine Zeit mit einem jQuery Dropdown-Skript auswählen kann. Die Uhrzeit ist eine Zeichenfolge im Format "5: 34 PM". Ich muss diesen Wert in meiner Mysql-Datenbank im Datetime-Format speichern.Konvertieren Zeichenfolge in Mysql Datetime mit AM/PM

Bisher kann ich das Datum und Zeit sparen, aber die AM/PM wird nicht einkalkuliert

Hier meine PHP-Funktion ist.

function db_tables_insert() { 
    global $wpdb; 
    $table_name = $wpdb->prefix . 'tweettweet'; 
    $tweet = $_POST["tweet"]; 
    $time = $_POST["timepicker"]; 
    $time=preg_replace('/\s+/', '', $time); 
    $date = "2015-02-08:"; 
    $datetime = $date.$time; 

    $wpdb->insert( 
     $table_name, 
     array( 
      'time' => $datetime, 
      'text' => $tweet, 
     ) 
    ); 
} 

In diesem Beispiel wird der Wert gespeichert die Datenbank wäre "2015-02-08 12:13:00" (unter der Annahme, dass der Benutzer 12:13 für die Zeit ausgewählt hat). Das Problem ist, dass der Wert derselbe ist, egal ob der Benutzer 12:13 oder 12:13 pm auswählt.

Ich brauche eine Möglichkeit, die Zeichenfolge zu konvertieren, so dass die "am/pm" berücksichtigt wird, wenn in der Datenbank gespeichert.

Antwort

1

strtotime sollte in der Lage sein, damit umzugehen.

echo date('Y-m-d H:i:s',strtotime('2014-12-12 12:34 AM')); 

kehrt 2014-12-12 00:34:00

+0

Ok, so wie würde ich integrieren, dass in meinen Code? Dies scheint nicht zu funktionieren: $ newdate = date ('Y-m-d H: i: s', strtotime ($ datetime)); – user715564

+0

Ändern Sie diese beiden Zeilen. '$ date =" 2015-02-08 ";' und '$ datetime = $ date. ''. $ Zeit; ' – phreakv6

+0

Perfekt, danke! – user715564

Verwandte Themen