2017-07-19 26 views
-1

現在の日付が< = frmdateの場合、日付を比較しようとしているPHPコードがあります。次に、クエリの行を配列に挿入する必要がありますが、問題は挿入のみです日付equalsto CURRENTDATEである以下であるとない行...この問題に比較演算子との日付比較

$prodarray= array(); 
while($row =mysqli_fetch_assoc($result)) 
{ 
    $todateExtracted=$row['to_date']; 
    $fromdateExtracted=$row['from_date']; 
    $toDate=strtotime($todateExtracted); 
    $frmDate=strtotime($fromdateExtracted); 

    if($currentdate <= $frmDate) 
    { 
     $prodarray[] = $row; 
    } 
    // $i++; 
} 
+0

何形式の解決に私を助けてくださいますか?それがUNIX以外のものなら、それはあなたの問題です。したがって、date()の場合は文字列です。文字列を比較することはできません。申し訳ありません、私の悪い。十分に注意深く読まなかった。待って... $ currentdateとは何ですか? – Andreas

+0

あなたは '$ currentdate'にどのように読み込みますか – RiggsFolly

+0

今日の文字列値です。コードの残りの部分は大丈夫だと思われるので、少し不器用ですが大丈夫です。質問には「文字列比較」というタグが付いています。私に賭けてほしい@Riggs :-) – Andreas

答えて

0

使用Strtotime() http://php.net/manual/en/function.strtotime.php

$prodarray= array(); 
while($row =mysqli_fetch_assoc($result)) 
{ 
    $todateExtracted=$row['to_date']; 
    $fromdateExtracted=$row['from_date']; 
    $toDate=strtotime($todateExtracted); 
    $frmDate=strtotime($fromdateExtracted); 
    if(strtotime($currentdate) <= strtotime($frmDate)) 
    { 
     $prodarray[] = $row; 
    } 
    // $i++; 
} 
+0

'$ currentdate'の日付に使用されているフォーマットを知らないとちょっと危険です。 – RiggsFolly

+1

@RiggsFolly OPは日付フォーマットを提供していませんでした。しかし、ほとんどの '普通の'ケースでは、 'strtotime()'が動作するはずです。 –