2017-02-20 77 views
0

這是我現在所擁有的:更換過濾器都接受昨天+今天

set_time_limit(120); 
$now = (new \DateTime)->format('Y-m-d H:i:s'); 
$nowYmd = (new \DateTime())->format('Y-m-d'); 
foreach ($rows as $row) { 
    $deviceLog = []; 
    $deviceLog['installation_id'] = $this->parseForNull((int)$row[0]); 
    $deviceLog['device_id'] = $devicesSerialToId[$row[1]]; 
    $deviceLog['2'] = $this->parseForNull($row[2]); 
    $deviceLog['3'] = $this->parseForNull($row[3]); 
    $deviceLog['4'] = $row[4]; 
    $deviceLog['5'] = $this->parseForNull($row[5]); 
    $deviceLog['6'] = $this->parseForNull($row[6]); 
    $deviceLog['7'] = $this->parseForNull($row[7]); 
    $deviceLog['8'] = $this->parseBoolean($row[8]); 
    $deviceLog['9'] = $this->parseBoolean($row[9]); 
    $deviceLog['10'] = $this->parseBoolean($row[10]); 
    $deviceLog['11'] = $this->parseForNull(intval($row[11])); 
    $deviceLog['12'] = $this->parseForNull($row[12]); 
    $deviceLog['13'] = $this->parseForNull($row[13]); 
    $deviceLog['14'] = $this->parseForNull($row[14]); 
    $deviceLog['15'] = $this->parseForNull($row[15]); 
    $deviceLog['16'] = $this->parseForNull($row[16]); 
    $deviceLog['17'] = $this->parseForNull($row[17]); 
    $deviceLog['18'] = $this->parseBoolean($row[18]); 
    $deviceLog['19'] = $this->parseBoolean($row[19]); 
    $deviceLog['20'] = $this->parseForNull($row[20]); 
    $deviceLog['21'] = $this->parseBoolean($row[21]); 
    if (!empty($row[22])) { 
    $date = \DateTime::createFromFormat('d-M-y', $row[22]); 
    if(!$date || ($date && ($date->format('Y-m-d') != $nowYmd))) { 
     continue; 
    } 
    $deviceLog['last_seen'] = $date->format('Y-m-d'); 
} else { 
    continue; 
} 

所以,目前,這最後一個「的if/else」,使上傳的文件,如果在DB不加行文件中的行與今天不同。我想改變,所以今天和昨天被接受,但我不知道如何。有任何想法嗎?

運行laravel。

回答

1

一種方式做,這是創建於昨天DateTime對象,然後比較,爲解析日期:

$yesterday = new \DateTime('yesterday'); 

... 

$date = \DateTime::createFromFormat('d-M-y', $row[22]); 

if(!$date || $date < $yesterday) { 

希望這有助於!

+0

工程就像一個魅力。非常感謝。不知道爲什麼我失去了,但。 :) – Stoff

+0

@RiggsFolly我不會將我的答案列爲教程... –

相關問題