note 94334 deleted from function.date by thiago

From: Date: Thu, 29 Oct 2009 13:05:00 +0000
Subject: note 94334 deleted from function.date by thiago
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-162245@lists.php.net to get a copy of this message
Note Submitter: luisus at luisus dot com ---- Hi There This Code Is Usefull When You Have A Date In The Format YYYY/MM/DD And Need To Convert It To The RSS Format day, MM DD YYYY HH:MM:SS ZONE. You Can Also Use The "DiaDeLaSemana" Function To Get The Weekday Entering Just YYYY/MM/DD. Hope It Helps <?php function AnoBisiesto($year) // input YYYY { if ($year % 400 == 0 || ($year % 4 == 0 && $year % 100 != 0)) return TRUE; else return FALSE; } function DiaDeLaSemana($Fecha) // input YYYY/MM/DD { $DiaSem = array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'); $Sepa = explode('/', $Fecha); $AnoComp = $Sepa[0]; $Mes = $Sepa[1]; $Dia = $Sepa[2]; $Ano = substr( $Sepa[0], -2 ); $Siglo = substr( $Sepa[0], 0, -2); $MesNum = array( 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5); if( AnoBisiesto($AnoComp) && $Mes == 1 ) $Bisiesto = 6; elseif( AnoBisiesto($AnoComp) && $Mes == 2 ) $Bisiesto = -1; else $Bisiesto = 0; $SigloLuisus = 6 - 2*($Siglo % 4 ); $AnoLuisus = $Ano + floor( $Ano / 4 ); $MesLuisus = $MesNum[$Mes-1]; $DiaLuisus = $Dia; $Semanal = $SigloLuisus + $AnoLuisus + $MesLuisus + $DiaLuisus + $Bisiesto; return $DiaSem[$Semanal%7]; } // outputs Mon, Tue, Wed, ... Sat or Sun function RSSDateMaker($Fecha,$Hora,$Zona) // if you input ('2009/10/28','07:45:15','GMT') { $Mes = array( 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dic'); $Sepa = explode('/', $Fecha); $Month = $Mes[$Sepa[1]-1]; $Resultado = DiaDeLaSemana($Fecha).', '.$Month.' '.$Sepa[2].' '.$Sepa[0].' '.$Hora.' '.$Zona; return $Resultado; } // It Will Output: Wed, Oct 28 2009 07:45:15 GMT ?>

« previous php.notes (#162245) next »