2016-03-16 3 views
0

У меня есть временные метки UNIX, и я хочу отобразить все результаты за текущий месяц. Когда я показываю результаты, в представлении ничего нет.Показать все результаты за этот месяц Only - Unix

public static function getArrayMonthly($date_month){ 

    $currentDate = strtotime(date("Y-m-d", '1458086400')); 

    $date_month = date('m', $currentDate); 

    $sql = "SELECT * FROM events where date_start between $currentDate AND $date_month ORDER BY date_start ASC"; 
    $result = DB::select($sql); 

    return($result); 

} 

ответ

1

Вы в настоящее время сравниваете формат timestamp с номером месяца, чтобы он не работал.

В настоящее время ваш запрос как:

SELECT * FROM events where date_start between 1458014400 AND 03 ORDER BY date_start ASC 

Так что ваш date_month должен быть

$first_date_month = strtotime(date('Y-m-01 00:00:00', $currentDate)); 
$last_date_month = strtotime(date('Y-m-t 23:59:59', $currentDate)); 

Кроме того, в вашем между вы должны начать со старой датой, поэтому она должна быть

SELECT * FROM events where date_start between $first_date_month AND $last_date_month ORDER BY date_start ASC 
+0

Это полезно, но я не хочу останавливаться на $ currentDate. Я хочу получить все результаты за весь месяц. так что отметка времени unix на сегодня 3-16-2016. Итак, я хочу показать все результаты в месяце марта –

+0

Итак, вы хотите показать весь результат для первого марта до 31-го, независимо от текущей даты, правильно? См. Мой отредактированный пост – olibiaz

+0

Wow thanks the bunch. я очень ценю это –