note 111082 added to function.date

From: Date: Sat, 12 Jan 2013 12:14:19 +0000
Subject: note 111082 added to function.date
Groups: php.notes 
Request: Send a blank email to php-notes+get-192993@lists.php.net to get a copy of this message
<?php function date_i18n( $format = '', $time = false, $lang = 'rus' ){ static $_ = array( 'eng' => array( 'f' => array( 0 => 'n', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' ), ), 'rus' => array( 'A' => array('_'=> 'A', 'AM' => 'ДП', 'PM' => 'ПП' ), 'a' => array('_'=> 'a', 'am' => 'дп', 'pm' => 'пп' ), 'D' => array('_'=> 'w', 'Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб' ), 'l' => array('_'=> 'w', 'Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота' ), 'F' => array( 0 => 'n', 'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь' ), 'f' => array( 0 => 'n', 'Января', 'Февраля', 'Марта', 'Апреля', 'Мая', 'Июня', 'Июля', 'Августа', 'Сентября', 'Октября', 'Ноября', 'Декабря' ), 'M' => array( 0 => 'n', 'Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек' ), 'S' => array( 1, 'ое' ), ) ); if( !isset( $_[ $lang ] ) && file_exists( $p = dirname( __FILE__ ) . DIRECTORY_SEPARATOR . $lang . '.ini' ) ) $_[ $lang ] = parse_ini_file( $p, true ); $date = ''; $time = ( !$time ) ? time() : ( ( intval( $time ) > 0 ) ? intval( $time ) : strtotime( $time ) ); $slash = false; foreach( str_split( $format ) as $char ) if ( $char == '\\' && !$slash ) $slash = true; elseif ( $slash && !( $slash = false )) $date .= $char; elseif( isset( $_[ $lang ][ $char ] ) ) $date .= $_[ $lang ][ $char ][ date( reset( $_[ $lang ][ $char ] ), $time ) ]; else $date .= date ( $char, $time ); return $date; } /*ukr.ini' file *//* [A] _=A AM=ДП PM=ПП [a] _=a am=дп pm=пп [D] _=w 0=Нд 1=Пн 2=Вт 3=Ср 4=Чт 5=Пт 6=Сб [l] _=w 0=Неділя 1=Понедiлок 2=Вiвторок 3=Середа 4=Четвер 5=П’ятниця 6=Субота [F] 0=n 1=Січень 2=Лютий 3=Березень 4=Квітень 5=Травень 6=Червень 7=Липень 8=Серпень 9=Вересень 10=Жовтень 11=Листопад 12=Грудень [f] 0=n 1=Січня 2=Лютого 3=Березня 4=Квітня 5=Травня 6=Червня 7=Липня 8=Серпня 9=Вересня 10=Жовтня 11=Листопада 12=Грудня [M] 0=n 1=Січ 2=Лют 3=Бер 4=Кві 5=Тра 6=Чер 7=Лип 8=Сер 9=Вер 10=Жов 11=Лис 12=Гру /*end*/ //test $t=strtotime('1987-05-31 06:22:53'); $d='<\t\r><\t\h>~<\/\t\h><\t\d>'.implode('<\/\t\d><\t\d>',str_split('DlSFfMaA')).'<\/\t\d><\/\t\r>'; echo date('r',$t); echo '<pre><table>'; foreach(array('rus','ukr','eng')as$lang) echo str_replace('~',$lang,date_i18n($d,$t,$lang)); echo str_replace('~','def',date($d,$t)); echo '</table></pre>'; /* result Sun, 31 May 1987 06:22:53 +0400 rus Вс Воскресенье ое Май Мая Май дп ДП ukr Нд Неділя st Травень Травня Тра дп ДП eng Sun Sunday st May May May am AM def Sun Sunday st May f May am AM */ ?> ---- Server IP: 69.147.83.199 Probable Submitter: 89.112.26.23 ---- Manual Page -- http://php.net/manual/en/function.date.php Edit -- https://master.php.net/note/edit/111082 Del: integrated -- https://master.php.net/note/delete/111082/integrated Del: useless -- https://master.php.net/note/delete/111082/useless Del: bad code -- https://master.php.net/note/delete/111082/bad+code Del: spam -- https://master.php.net/note/delete/111082/spam Del: non-english -- https://master.php.net/note/delete/111082/non-english Del: in docs -- https://master.php.net/note/delete/111082/in+docs Del: other reasons-- https://master.php.net/note/delete/111082 Reject -- https://master.php.net/note/reject/111082 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#192993) next »