2016-06-10 10 views
0

Ich versuche, RSS-Daten von einer Seite zu ziehen und in meine Datenbank hochzuladen.In DATETIME konvertieren von "Fr, 10 Jun 2016 14:30:38 -0500"

Beispiel:

<dc:date>Fri, 10 Jun 2016 14:30:38 -0500</dc:date> 

die -0500 ist das Problem.

, was ich in der Regel tun:

$dc1 = $xml->channel->item[$i]->children($namespaces["dc"]); 
    $pubDate1 = $dc1->date; 
    $pubDate = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $pubDate1))); 

Soll ich $ pubDate anders sein zu definieren?

Antwort

0

Keine Notwendigkeit des Ersatzes ‚-‘ mit ‚/‘. Sie können direkt die $ pubDate1

$dc1 = $xml->channel->item[$i]->children($namespaces["dc"]); 
$pubDate1 = $dc1->date; // 'Fri, 10 Jun 2016 14:30:38 -0500' 
$pubDate = date('Y-m-d H:i:s', strtotime($pubDate1)); 

OutPut passieren:

2016-06-11 12:30:38

0

Wenn alle Ihre Datum haben den letzten Teil, vielleicht funktioniert dieser Code. aber wenn der letzte Teil (-0500) in einigen von ihnen scheint es nicht funktionieren:

$dc1 = $xml->channel->item[$i]->children($namespaces["dc"]); 
$pubDate1 = explode(' ',$dc1->date); 
// remove -0500 
array_pop($pubDate1); 
$pubDate1 = implode(' ',$pubDate1); 
$pubDate = date('Y-m-d H:i:s', strtotime($pubDate1)); 
+0

danke! Wird dies als die Antwort überprüfen, wenn ich kann. – newneub