привет я хотел построить
Я получаю $ date и $ date1 из формы xxx. Я хотел сделать отпуск.
теперь мне нужен процесс $ date с переменной строкой со значением xx-xx-xxxx (dd / mm / yyyy) и $ date1 со значением теперь я хочу преобразовать их на сегодняшний день.
Я уже знаю, как подсчитывать день, используя dateiff ()
я конвертирую $ date, поэтому я могу использовать функцию dateadd ()
Здесь код
$t1 = substr($date,0,2); $b1 = substr($date,3,2); $y1 = substr($date,6,4); $t2 = substr($date11,0,2); $b2 = substr($date1,3,2); $y2 = substr($date1,6,4); $tawal ="$y1-$b1-$t1"; $takhir = "$y2-$b2-$t2"; $query = "SELECT datediff('$takhir', '$tawal')as selisih"; $hasil = mysql_query($query); $data = mysql_fetch_array($hasil); $times = $data['selisih']; $times = + 1;
здесь картина
Для этого вам не нужны substr или mysql. Сначала получите свои даты без подстроки:
$tawal = date('Ym-d', strtotime($date)); $takhir = date('Ym-d', strtotime($date1));
Теперь у вас есть форматированные строки Ymd. Чтобы найти diff, хотя вам не нужно преобразовывать в Ymd, так как нам не нужен mysql. Вы можете использовать этот метод, чтобы найти разницу в секундах.
$diff = abs(strtotime($date2) - strtotime($date)); $years = floor($diff / (365*60*60*24)); $months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24)); $days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));
Вот мои помощники на дату:
function date_as($date, $format = 'Verbal, hour:minute') { parse_date($date); $format = str_replace(array('verbal', 'Verbal'), array($date['verbal'], $date['Verbal']), $format); return str_replace(array_keys($date), array_values($date), $format); } function parse_date(&$date) { $unix = is_numeric($date) ? $date : strtotime($date); $date = array( 'month' => strtolower(date('F', $unix)), 'dayweek' => strtolower(date('l', $unix)), 'date' => date('d', $unix), 'year' => date('Y', $unix), 'hour' => date('H', $unix), 'minute' => date('i', $unix), 'second' => date('s', $unix), 'today' => (date('Ym-d',strtotime('now')) == date('Ym-d', $unix)), 'yesterday' => (date('Ym-d', strtotime('now - 1 day')) == date('Ym-d', $unix)), 'tomorrow' => (date('Ym-d', strtotime('now + 1 day')) == date('Ym-d', $unix)), 'mint' => date('m', $unix), ); if ($date['yesterday']) { $date['verbal'] = 'yesterday'; } elseif ($date['today']) { $date['verbal'] = 'today'; } elseif ($date['tomorrow']) { $date['verbal'] = 'tomorrow'; } else { $date['verbal'] = 'date month'; } foreach (array('dayweek', 'month', 'verbal', 'date') as $p) { $date[ucfirst($p)] = mb_convert_case($date[$p], \MB_CASE_TITLE, 'UTF-8'); } }
Формат, как вы хотите …