2017-04-13 5 views
1

特定の日付に閉じるページのアプリケーションフォームがあります。ただし、特定の日付(4月13日)に当てはまるとすぐに終了しますが、たとえば4月13日14:00に閉じることができます。 WordPress(add_time)にドロップダウンを作成し、14:00の文字列を出力しました。それを日付に追加すると、$ daysleftには追加された時間も含まれます。日付を取得して「x」時間を追加する方法

何かが好きですか?完全なコード場合は、以下の

$addedTime = get_field('add_time'); 
$addedTime = strtotime ($addedTime); 
$daysleft = floor($datediff/(60*60*24)+$addedtime)) +1 <--- (not sure where to one is for) 

それは現在

<?php 
    $now = time(); 
    $dueDate = get_field('due_date'); 
    $addedTime = get_field('add_time'); 
    $dueDate = strtotime($dueDate); 
    $datediff = $dueDate - $now; 
    $daysLeft = floor($datediff/(60*60*24))+1; 
    $daysLeft = intval($daysLeft); 
?> 
<?php 
    if($daysLeft == 0) { 
     echo 'Last day'; 
    } elseif($daysLeft < 0) { 
     echo 'Deadline passed'; 
    } elseif($daysLeft == 1) { 
     echo $daysLeft.' days left'; 
    } else { 
     echo $daysLeft.' days left'; 
    } 
?> 

答えて

1

であるように私は、最初にすべてのCarbonを使用することをお勧めします。しかし、あなたはまた、標準DateTimeオブジェクトを使用することができます。

のDateTime

$date = new DateTime('20-04-2017'); 
$date->add(new DateInterval('P1D')); 
echo $date->format('d-m-Y'); 

カーボン私は次のようにカーボンを使用したいアプリケーションのための今すぐ

use Carbon\Carbon; 

$date = new Carbon::createFromFormat('d-m-Y','20-04-2017'); 
$nextDay = $date->addDay(); 
echo $nextDay->format('d-M-Y'); 

:あなたが使用したい場合は

$enddate = Carbon::createFromFormat('d-m-Y H:i:s','14-04-2017 14:00:00'); 
if(Carbon::now()->gte($enddate)) { 
    //Application ended code 
} 
else { 
    // application active code 
} 

あなたができるDateTimeこの:あなたもに比較することができ、そのクラスで

$time = new DateTime(); 
$time->modify("+1 hour"); 
echo $time->format("Y-m-d H:i:s"); 

:あなたは、次のコードを使用することができ、1時間で日付と時刻

操作について
$enddate = new DateTime('2017-04-13 13:00:00'); 
$now = new DateTime('now'); 

$diff = $enddate->getTimestamp() - $now->getTimestamp(); 

if($diff >= 0) { 
    echo 'active'; 
} 
else { 
    echo 'inactive'; 
} 
関連する問題