Re: [PHP] From 24/7/2013 to 2013-07-24
[email protected] (Robert Cummings)
| Newsgroups | php.general |
|---|---|
| Organization | InterJinn |
| Message-ID | <[email protected]> |
On 13-07-26 11:42 AM, jomali wrote: > On Fri, Jul 26, 2013 at 5:18 AM, Karl-Arne Gjersøyen <[email protected]>wrote: > >> Below is something I try that ofcourse not work because of rsosort. >> Here is my code: >> ----------------------- >> $lagret_dato = $_POST['lagret_dato']; >> foreach($lagret_dato as $dag){ >> >> $dag = explode("/", $dag); >> rsort($dag); >> $dag = implode("-", $dag); >> var_dump($dag); >> >> What I want is a way to rewrite contents of a variable like this: >> >> From 24/7/2013 to 2013-07-24 >> >> Is there a way in PHP to do this? >> >> Thank you very much. >> >> Karl >> > > $conv_date = str_replace('/', '-','24/7/2013'); > echo date('Y-m-d', strtotime($conv_date)); > Result: 2013-07-24 It would be better if you reformatted first since this is ambiguous when you have the following date: 6/7/2013 Here's a completely unambiguous solution: <?php $old = '24/7/2013'; $paddy = function( $bit ){ return str_pad( $bit, 2, '0', STR_PAD_LEFT ); }; $new = implode( '-', array_map( $paddy, array_reverse( explode( '/', $old ) ) ) ); echo $new."\n"; ?> Cheers, Rob. -- E-Mail Disclaimer: Information contained in this message and any attached documents is considered confidential and legally protected. This message is intended solely for the addressee(s). Disclosure, copying, and distribution are prohibited unless authorized.