Local time naar date notatie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Joep

Joep

19/10/2007 09:51:00
Quote Anchor link
Hey mannen (en vrouwen),
Ik ben bezig met een locale website en moet uit een xml oud date in de db pompen. Nu staat er in de oude xml deze notatie:
Augustus 2007 enzovoort.
Nederlands dus, zonder dag. tot op dit moment heb ik iig alle date klaar, op deze manier:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?
// Function to rephrase the date
$a_org_date            = explode(" ",$o_project->date['name']);
$i_org_date_length     = count($a_org_date);
$s_new_date_year       = strtolower($a_org_date[$i_org_date_length - 1]);
$s_new_date_month     = strtolower($a_org_date[$i_org_date_length - 2]);
?>

heb nu de de maand en het jaar in het nederlands. Is er een manier met strftime om deze waarden om te zetten naar een date notatie, liefst 2007-08-01, de 01 hou ik dan standaard even aan, aangezien ik de dag niet weet.

Alvast toppie bedankt en een mooie dag op kantoor en succes met de borrel vanmiddag
 
PHP hulp

PHP hulp

23/04/2024 16:59:24
 
Gerben Jacobs

Gerben Jacobs

19/10/2007 10:04:00
Quote Anchor link
Heb geen idee of het werkt, maar hopelijk is PHP slim genoeg om te denken dat als je eerst setlocale() gebruikt en deze op NL zet hij strftotime() dan ook als "Nederlands" kan lezen.

Heb geen idee of het werkt, but it's worth a shot.
 
Joep

Joep

19/10/2007 10:09:00
Quote Anchor link
Klopt helemaal, de setlocal werkt op strftime.
Maar helaas werkt de strftime() functie alleen op numerieke waarden volgens mij.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?
setlocale(LC_TIME, "nl_NL");
printr(strftime('%B','10-08-2007'));
?>

kan dus wel. Maar ja, helaas moet ik juist de numerieke waarde hebben.

Uiteraard kan ik wel een arraytje bouwen die alle maanden even omzet in het engels en dan de gebruikelijke strtotime gebruiken. Vroeg me alleen af of het makkelijker kon
 
Gerben Jacobs

Gerben Jacobs

19/10/2007 10:13:00
Quote Anchor link
Ja sorry, bedoelde dus strtotime().

Dat je dus kijkt of strtotime() rekening houdt met de huidge locale. Anders is jouw idee om een array'tje met maanden te maken de meest logische oplossing ja.

Edit: Mijn oplossing gaat niet werken, strtotime laat alleen Engels toe. Je kan wel wat met een timezone pielen, maar daar heb je nog niks aan.
Gewijzigd op 01/01/1970 01:00:00 door Gerben Jacobs
 
Joep

Joep

19/10/2007 10:49:00
Quote Anchor link
Nee zo zat ik idd ook al. Mischien dat het een heel makkelijk stapje is, maar zoals ik het nu zie is het inderdaad alleen mogelijk van een date notatie een locale variant eruit te gooien.
Heb nu toch maar even een array gemaakt ja.
Maar ja, arrays maken doe ik heel de dag ;) Dus misschien dat iemand nog de gouden tip heeft ;)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.