note 106671 deleted from function.date by danbrown

From: Date: Tue, 29 Nov 2011 15:43:09 +0000
Subject: note 106671 deleted from function.date by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-184786@lists.php.net to get a copy of this message
Note Submitter: dev5er6 at gmail dot com ---- <?php function date_lang($format='', $time=false, $mode=null, $lang='rus'){ static $static=array(); if(!$format)return ''; $date=''; $selfUTF8=true; $encoding='UTF-8'; $charset='charset'; $time=($time&&is_numeric($time)&&$time>0)?$time:(($time&&is_string($time))?strtotime($time):time()); if(isset($static[$lang])&&count($static[$lang]))$translate=&$static[$lang]; else{ $static=array( 'rus'=>array($charset=>'windows-1251', 'А'=>array('A','AM'=>'ДП','PM'=>'ПП'), 'а'=>array('a','am'=>'дп','pm'=>'пп'), 'Д'=>array('D','Sun'=>'Вс', 'Mon'=>'Пн', 'Tue'=>'Вт', 'Wed'=>'Ср', 'Thu'=>'Чт', 'Fri'=>'Пт', 'Sat'=>'Сб'), 'Л'=>array('l', 'Sunday' =>'Воскресенье','Monday' =>'Понедельник', 'Tuesday' =>'Вторник' ,'Wednesday'=>'Среда', 'Thursday'=>'Четверг' ,'Friday' =>'Пятница', 'Saturday'=>'Суббота' ), 'Ф'=>array('F', 'January'=>'Январь' ,'February'=>'Февраль','March' =>'Март', 'April' =>'Апрель' ,'May' =>'Май' ,'June' =>'Июнь', 'July' =>'Июль' ,'August' =>'Август' ,'September'=>'Сентябрь', 'October'=>'Октябрь','November'=>'Ноябрь' ,'December' =>'Декабрь' ), 'ф'=>array('F', 'January'=>'Января' ,'February'=>'Февраля','March' =>'Марта', 'April' =>'Апреля' ,'May' =>'Мая' ,'June' =>'Июня', 'July' =>'Июля' ,'August' =>'Августа','September'=>'Сентября', 'October'=>'Октября','November'=>'Ноября' ,'December' =>'Декабря' ) ), 'ukr'=>array($charset=>'windows-1251', 'А'=>array('A','AM'=>'ДП','PM'=>'ПП'), 'а'=>array('a','am'=>'дп','pm'=>'пп'), 'Д'=>array('D','Sun'=>'Нд', 'Mon'=>'Пн', 'Tue'=>'Вт', 'Wed'=>'Ср', 'Thu'=>'Чт', 'Fri'=>'Пт', 'Sat'=>'Сб'), 'Л'=>array('l', 'Sunday' =>'Неділя' ,'Monday' =>'Понедiлок', 'Tuesday' =>'Вiвторок','Wednesday'=>'Середа', 'Thursday'=>'Четвер' ,'Friday' =>'П’ятниця', 'Saturday'=>'Субота' ), 'Ф'=>array('F', 'January'=>'Січень' ,'February'=>'Лютий' ,'March' =>'Березень', 'April' =>'Квітень','May' =>'Травень' ,'June' =>'Червень', 'July' =>'Липень' ,'August' =>'Серпень' ,'September'=>'Вересень', 'October'=>'Жовтень','November'=>'Листопад' ,'December' =>'Грудень' ), 'ф'=>array('F', 'January'=>'Січня' ,'February'=>'Лютого' ,'March' =>'Березня', 'April' =>'Квітня' ,'May' =>'Травня' ,'June' =>'Червня', 'July' =>'Липня' ,'August' =>'Серпня' ,'September'=>'Вересня', 'October'=>'Жовтня' ,'November'=>'Листопада','December' =>'Грудня' ) ) ); if(isset($static[$lang])&&count($static[$lang]))$translate=&$static[$lang]; else return trigger_error(sprintf('%s( \'%s\', %s, %s, \'%s\' ) Couldn\'t find ARRAY_KEY "%s"!',__FUNCTION__,$format,$time,$mode,$lang,$lang),E_USER_WARNING); } $charset=isset($translate[$charset])?$translate[$charset]:$encoding; foreach(str_split(iconv($encoding,$charset,$format))as$char) $date.=(!isset($translate[$key=($selfUTF8)?iconv($charset,'UTF-8',$char):$char])) ?date($key,$time) :iconv(($selfUTF8)?'UTF-8':$charset,$encoding,$translate[$key][date($translate[$key][0],$time)]); if(!is_null($mode))$date=mb_convert_case($date,$mode,$encoding); return $date; } echo date_lang('Д d ф Y H:i:s','26 november 2011 21:30:31',0,'ukr'); //СБ 26 ЛИСТОПАДА 2011 21:30:31 ?>

« previous php.notes (#184786) next »