Data estratta da RSS non memorizzata

sunlightbanana

Utente Attivo
26 Ott 2011
96
0
6
Grazie a SimpleXML, estraggo da risorse RSS degli elementi tra cui la data, che poi memorizzo in un array e formatto tramite un foreach. Il risultato che si visualizza grazie a print_r è questo:
Codice:
Array
(
    [0] => 05-04/10:56
    [1] => 05-04/08:13
    [2] => 05-04/09:45
    [3] => 05-04/10:59
    [4] => 04-04/21:14
}
Questo funzione se la data fornita dall'RSS è in inglese, così:
Codice:
Tue, 05 Apr 2016 10:56:51 +0200
Ma se la data fornita dall'RSS è in italiano, così:
Codice:
Mar, 05 Apr 2016 10:42:37 +0200
questo è il risultato:
Codice:
Array
(
    [0] => 01-01/01:00
    [1] => 01-01/01:00
    [2] => 01-01/01:00
    [3] => 01-01/01:00
    [4] => 01-01/01:00
    [5] => 01-01/01:00
}
Ho provato varie configurazioni tramite setlocale() e strftime(), ma niente.

Chiedo aiuto e vi ringrazio per la disponibilità.
 
Ciao, sinceramente non so se esiste un metodo più semplice, potresti tradurre la striga in inglese
PHP:
$data = "Mar, 05 Apr 2016 10:56:51 +0200";

$days = array("Mon,","Tue,","Wed,","Thu,","Fri,","Sat,","Sun,");
$giorni = array("Lun,","Mar,","Mer,","Gio,","Ven,","Sab,","Dom,");

echo date("d-m/H:i",strtotime(str_replace($giorni, $days, $data)));
dovrai farlo anche per i mesi
 
Ok, grazie, risolve la situazione, ma visto che mi serve solo data e ora in formato numerico, ho messo un if che controlla se i primi tre caratteri sono in italiano, e me li cambia in modo che poi il ciclo successivo riconosce la stringa e la memorizza.

Grazie per il consiglio.
 

Discussioni simili