Created
October 11, 2015 22:30
-
-
Save KarelWintersky/d82a703ca6a2ba8e4b13 to your computer and use it in GitHub Desktop.
KW: Date functions
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* конвертирует дату из человекопонятного представления в метку времени, для создания метки времени берется полдень указанной даты | |
* @param $str_date | |
* @param string $format | |
* @return int | |
*/ | |
function convertDateToTimestamp($str_date, $format = "d.m.Y") | |
{ | |
if (function_exists('date_parse_from_format')) { | |
$date_array = date_parse_from_format($format, $str_date); | |
} else { | |
if (function_exists('date_parse')) { | |
$date_array = date_parse($str_date); | |
} else { | |
// date_parse not implemented | |
$date_array_pre = getdate(strtotime($str_date)); | |
$date_array['month'] = $date_array_pre['mon']; | |
$date_array['day'] = $date_array_pre['mday']; | |
$date_array['year'] = $date_array_pre['year']; | |
} | |
} | |
return mktime(12, 0, 0, $date_array['month'], $date_array['day'], $date_array['year']); | |
} | |
/** | |
* конвертирует дату из человекопонятного представления в массив | |
* @param $str_date | |
* @return array | |
*/ | |
function convertDateToArray($str_date) | |
{ | |
if (function_exists('date_parse_from_format')) { | |
$date_array = date_parse_from_format('d.m.Y', $str_date); | |
} else { | |
if (function_exists('date_parse')) { | |
$date_array = date_parse($str_date); | |
} else { | |
// date_parse not implemented | |
$date_array_pre = getdate(strtotime($str_date)); | |
$date_array['month'] = $date_array_pre['mon']; | |
$date_array['day'] = $date_array_pre['mday']; | |
$date_array['year'] = $date_array_pre['year']; | |
$date_array['hour'] = 12; | |
$date_array['minute'] = 0; | |
$date_array['second'] = 0; | |
} | |
} | |
return $date_array; | |
} | |
/** | |
* конвертирует "человекопонятную" дату в MYSQL-формат | |
* @param $string | |
*/ | |
function convertUserDateToSQLDate($string) | |
{ | |
Date('Y-m-d', ConvertDateToTimestamp($string)); | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment