使用PHP计算两个日期之间的差异?

时间:2017-02-15 05:27:10

标签: php mysql

如何使用PHP计算和显示两个日期之间的差异?我尝试了一些方法,但我无法完美执行。任何人都可以帮助我

  S/N  | Event          | Duration 
 ----- | -------------  | ------------ 
  01   | Trip- Bangkok  | 2016-11-08 to 2016-11-20
  02   | Trip-New York  | 2016-12-01 to 2016-12-17

但我想像这样显示

  S/N  | Event          | Duration days
 ----- | -------------  | ------------ 
  01   | Trip- Bangkok  | 12 days
  02   | Trip-New York  | 17 days

我的数据库

 <table border="1" width="920px" align="center" cellpadding="3" class="mytable" cellspacing="0" >
        <tr>
            <th>S/N</th>
            <th>Event</th> 
            <th>Duration</th>
        </tr>
		
		     <?php
		 $key="";
	if(isset($_POST['searchtxt']))
		$key=$_POST['searchtxt'];
	
	if($key !="")
		$sql_sel=mysql_query("SELECT * FROM trip_tbl NATURAL JOIN info_tbl WHERE info_name  like '%$key%' or event like '%$key%'");
	else
        $sql_sel=mysql_query("SELECT * FROM info_tbl  NATURAL JOIN trip_tbl");
		
    $i=0;
    while($row=mysql_fetch_array($sql_sel)){
    $i++;
    $color=($i%2==0)?"lightblue":"white";
    ?>
      <tr bgcolor="<?php echo $color?>">
       <!-- <tr><br><?php echo  $i;?></br></tr> -->
	        <td><p align ="center"><?php echo $i;?></p></td>
            <td><font size="4px"><?php echo $row['event'];?></font></td>			
			<td><font size="4px"><?php echo $row['departure']." to ".$row['arrived'];?></font></td>
			
            </tr>
    <?php	
    }
    ?>
	<tr></tr>

: - 我已经使用了DATEDIFF,但它没有用到

1 个答案:

答案 0 :(得分:1)

如果您有PHP版本&gt; 5.3然后你可以用这个来计算。

$date1 = new DateTime("2016-11-08");
$date2 = new DateTime("2016-11-20");

$diff = $date2->diff($date1)->format("%d");
echo $diff;

$ diff会打印您的确切日期。