Czy istnieje sposób, aby znaleźć dzień tygodnia w php z konkretną datą.Trzeci czwartek miesiąca w php
nie mam na myśli
date('D', $timestamp);
mam na myśli, gdybym był dostarczyć datę jak 2010-10-21 byłoby wrócić „trzeci czwartek”.
Czy istnieje sposób, aby znaleźć dzień tygodnia w php z konkretną datą.Trzeci czwartek miesiąca w php
nie mam na myśli
date('D', $timestamp);
mam na myśli, gdybym był dostarczyć datę jak 2010-10-21 byłoby wrócić „trzeci czwartek”.
Nie bezpośrednio, trzeba funkcję pomocnika na to:
function literalDate($timestamp) {
$timestamp = is_numeric($timestamp) ? $timestamp : strtotime($timestamp);
$weekday = date('l', $timestamp);
$month = date('M', $timestamp);
$ord = 0;
while(date('M', ($timestamp = strtotime('-1 week', $timestamp))) == $month) {
$ord++;
}
$lit = array('first', 'second', 'third', 'fourth', 'fifth');
return strtolower($lit[$ord].' '.$weekday);
}
echo literalDate('2010-10-21'); // outputs "third thursday"
przykład robocza:
strtotime()
wydaje się rozumieć składnię. Musisz tylko podać pierwszy dzień danego miesiąca jako punkt wyjścia.
echo date("d.m.Y", strtotime("third thursday", mktime(0,0,0,10,1,2010)));
// Will output October 21
echo date("d.m.Y", strtotime("third thursday", mktime(0,0,0,11,1,2010)));
// Will output November 18
myślę, że masz go w niewłaściwy sposób wokół, chciał "date => dosłowną reprezentację", a nie "reprezentację dosłowną => datę". –
@ Masz rację, źle odczytałem. –
Pekka, dziękuję za odpowiedź. to też pomaga. – Jason
Czy chodziło o '$ weekday = date ('l', $ timestamp)'? – xtofl
Dzięki ... To doprowadziło mnie do właściwego kierunku. – Jason
@xtofl, yup, naprawiono. @Pekka, dzięki! –