note 119314 deleted from dateinterval.createfromdatestring by cmb

From: Date: Thu, 12 May 2016 17:28:52 +0000
Subject: note 119314 deleted from dateinterval.createfromdatestring by cmb
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-205471@lists.php.net to get a copy of this message
Note Submitter: racl at gulix dot cl ---- /** * regresa feriado de semana santa se calcula segun calendario lunar, primer fin de semana tras luna llena * despues del equinoccio de otoño * @param integer anio año a revisar * @return array arreglo de la forma fecha[]='dd,mm' */ function viernesSanto($anio) { date_default_timezone_set('America/Santiago'); $mesLunar = 29.53; //dias $lunaLlena = new \DateTime('2016-01-24'); // primer luna llena 2016 $equinoccio = new \DateTime($anio.'-03-21'); // 3 de marzo $intervalo = $equinoccio->diff($lunaLlena); $dias = $intervalo->days; $proximaLunaLLenaTrasEquinoccioEnDias=ceil(floor($dias/$mesLunar)*$mesLunar+$mesLunar); $intervaloProximaLunaLLena = new \DateInterval('P'.$proximaLunaLLenaTrasEquinoccioEnDias.'D'); $proximaLunaLlena = $lunaLlena->add($intervaloProximaLunaLLena); list($dd,$mm) = explode('-',$proximaLunaLlena->format('d-m')); $diaSemana = date('w',mktime(0,0,0,$mm,$dd,$anio)); $domingo = strtotime(date('Y-m-d',strtotime('-'.$diaSemana.' day',strtotime(date($anio.'-'.$mm.'-'.$dd))))); list($dd,$mm) = explode('-',date('d-m',strtotime('+5 day',$domingo))); return array('dia'=>$dd,'mes'=>$mm); }

« previous php.notes (#205471) next »