2017-01-18 3 views
-2
session_start(); 

$_SESSION['start1']= new DateTime('now'); 

$_SESSION['start2']= new DateTime('now +10 minute'); 

$_SESSION['time1'] = $_SESSION['start2']->diff($_SESSION['start1']); 

$_SESSION['start3']= new DateTime('now +20 minute'); 

$_SESSION['start4']= new DateTime('now +30 minute'); 

$_SESSION['time2'] = $_SESSION['start3']->diff($_SESSION['start4']); 

$_SESSION['alltime']=$_SESSION['time1']+$_SESSION['time1']; 

echo $_SESSION['alltime']->format('%I minute %S second'); 

時間を表示しませんか?この時間を計算するには(PHPセッション)

+2

ここではあらゆる種類のエラーが発生しているはずです。 http://php.net/manual/en/function.error-reporting.php –

+0

@ Fred-ii-まあ、最後の2行からエラーが出る – RiggsFolly

+1

あなたが実際に達成しようとしていることを教えてください。 – RiggsFolly

答えて

0

あなたは、エラー報告をオンにする必要があります。

<?php 
error_reporting(E_ALL); 
ini_set('display_errors', 1); 
?> 

あなたの問題を示すこと。

あなたのコード:

session_start(); 

$_SESSION['start1']= new DateTime('now'); 

$_SESSION['start2']= new DateTime('now +10 minute'); 

$_SESSION['time1'] = $_SESSION['start2']->diff($_SESSION['start1']); 

$_SESSION['start3']= new DateTime('now +20 minute'); 

$_SESSION['start4']= new DateTime('now +30 minute'); 

$_SESSION['time2'] = $_SESSION['start3']->diff($_SESSION['start4']); 

$_SESSION['alltime']=$_SESSION['time1']+$_SESSION['time1']; <----- $_SESSION[ 'alltime' ] is an integer 

echo $_SESSION['alltime']->format('%I minute %S second'); 

は今、これを完了する可能性がより良い方法よりもありますが、私はそれを行くを与えています。

$start1 = new DateTime('now'); 
$start2= new DateTime('now +10 minute'); 

$time1 = $start2->diff($start1); 
$time1_min = $time1->format('%I'); 
$time1_sec = $time1->format('%S'); 
echo $time1->format('%I minutes %S seconds')."\n"; 
echo $time1_min."\n"; 

$start3= new DateTime('now +20 minute'); 
$start4= new DateTime('now +30 minute'); 

$time2 = $start3->diff($start4); 
$time2_min = $time2->format('%I'); 
$time2_sec = $time2->format('%S'); 
echo $time2_min."\n"; 
echo $time2->format('%I minutes %S seconds')."\n"; 

$total_min = $time1_min + $time2_min; 
$total_sec = $time1_sec + $time2_sec; 

echo "Total is $total_min minutes and $total_sec seconds"; 

あなたはそれをうまくする必要がありますので、秒60を通過した場合、それは分に追加されていないことを理解しなければならない今、基本的には分と秒の違いを見つけることですし、それらを一緒に追加します。

また、eval.in did not likeのようにセッションを削除する必要がありました。 https://eval.in/719160

+0

ありがとうございます。 _SESSION ['alltime'] = $ _ SESSION ['time1'] + $ _ SESSION ['time1']; –

+0

はい、ちょうどセッション変数を上記の各変数に追加してください。 – Blinkydamo