PHP代码问题,写在html中转换时间格式
{$coupon.end_time}这个在html代码是以这样的格式调用的,我只知道它是存储在数据库中的int(11)类型,格式为那种10位的时间格式!现在我想转换为da...
{$coupon.end_time} 这个在html代码是以这样的格式调用的,我只知道它是存储在数据库中的int(11)类型,格式为那种10位的时间格式!
现在我想转换为 date('Y-m-d', 'coupon.end_time') 类似2011-11-11 这种形式!
代码如下(我不会php代码,所以下面的运行报错):
<?php
date_default_timezone_set("PRC"); //调整什么8小时时差作用
echo date('Y-m-d', {$coupon.end_time}); //{$coupon.end_time}应该不是这样调用的
?>
{$coupon.end_time}是否需要先用int[coupon.end_time].tostring()转型?
是否还需要用到这个方法 strtotime(); 转换时间戳?
date_default_timezone_set("PRC"); 调整时差也没有效果,能不能直接加上8?
我的最终目的就是输出2011-11-11这种格式的字符串就行了!求代码,谢谢...实在是没碰过php,也没时间去研究它的语法!
date() 方法能用function方法作为第二个参数吗?因为原本在html里面的代码是:{function name="to_date" value=$coupon.end_time},显示格式为 2011-11-11 11:11:11 。我不要后面的小时分钟和秒...
这样可以调用吗:
<?php
date("Y-m-d", function name="to_date" value=$coupon.end_time);
?>
关键是在html中的语法格式是否正确! 展开
现在我想转换为 date('Y-m-d', 'coupon.end_time') 类似2011-11-11 这种形式!
代码如下(我不会php代码,所以下面的运行报错):
<?php
date_default_timezone_set("PRC"); //调整什么8小时时差作用
echo date('Y-m-d', {$coupon.end_time}); //{$coupon.end_time}应该不是这样调用的
?>
{$coupon.end_time}是否需要先用int[coupon.end_time].tostring()转型?
是否还需要用到这个方法 strtotime(); 转换时间戳?
date_default_timezone_set("PRC"); 调整时差也没有效果,能不能直接加上8?
我的最终目的就是输出2011-11-11这种格式的字符串就行了!求代码,谢谢...实在是没碰过php,也没时间去研究它的语法!
date() 方法能用function方法作为第二个参数吗?因为原本在html里面的代码是:{function name="to_date" value=$coupon.end_time},显示格式为 2011-11-11 11:11:11 。我不要后面的小时分钟和秒...
这样可以调用吗:
<?php
date("Y-m-d", function name="to_date" value=$coupon.end_time);
?>
关键是在html中的语法格式是否正确! 展开
4个回答
展开全部
<?php #time.inc.php 2009-12-11 by zhangxinxu
//计算时间,规则如下,如果一小时内,显示分钟,如果大于1小时小于1天显示小时,如果大于天且小于3天,显示天数,否则显示日期时间
function time_tran($the_time){
$now_time = date("Y-m-d H:i:s");
$now_time = strtotime($now_time);
$show_time = strtotime($the_time);
$dur = $now_time - $show_time;
if($dur < 60){
return $dur.'秒前';
}else{
if($dur < 3600){
return floor($dur/60).'分钟前';
}else{
if($dur < 86400){
return floor($dur/3600).'小时前';
}else{
if($dur < 259200){//3天内
return floor($dur/86400).'天前';
}else{
return $the_time;
}
}
}
}
}
?>
注:这里没有考虑到时区。
后修改如下:
function time_tran($the_time){
$now_time = date("Y-m-d H:i:s",time()+8*60*60);
$now_time = strtotime($now_time);
$show_time = strtotime($the_time);
$dur = $now_time - $show_time;
if($dur < 0){
return $the_time;
}else{
if($dur < 60){
return $dur.'秒前';
}else{
if($dur < 3600){
return floor($dur/60).'分钟前';
}else{
if($dur < 86400){
return floor($dur/3600).'小时前';
}else{
if($dur < 259200){//3天内
return floor($dur/86400).'天前';
}else{
return $the_time;
}
}
}
//计算时间,规则如下,如果一小时内,显示分钟,如果大于1小时小于1天显示小时,如果大于天且小于3天,显示天数,否则显示日期时间
function time_tran($the_time){
$now_time = date("Y-m-d H:i:s");
$now_time = strtotime($now_time);
$show_time = strtotime($the_time);
$dur = $now_time - $show_time;
if($dur < 60){
return $dur.'秒前';
}else{
if($dur < 3600){
return floor($dur/60).'分钟前';
}else{
if($dur < 86400){
return floor($dur/3600).'小时前';
}else{
if($dur < 259200){//3天内
return floor($dur/86400).'天前';
}else{
return $the_time;
}
}
}
}
}
?>
注:这里没有考虑到时区。
后修改如下:
function time_tran($the_time){
$now_time = date("Y-m-d H:i:s",time()+8*60*60);
$now_time = strtotime($now_time);
$show_time = strtotime($the_time);
$dur = $now_time - $show_time;
if($dur < 0){
return $the_time;
}else{
if($dur < 60){
return $dur.'秒前';
}else{
if($dur < 3600){
return floor($dur/60).'分钟前';
}else{
if($dur < 86400){
return floor($dur/3600).'小时前';
}else{
if($dur < 259200){//3天内
return floor($dur/86400).'天前';
}else{
return $the_time;
}
}
}
展开全部
直接用date("Y-m-d", $coupon.end_time)就可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一步转成时间戳 $times = strtotime("2011-06-07 10:00 "); 第二$time=date("m-d-Y",$time); 我不懂php, vb里是这样:Text1.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
{$coupon.end_time} 看样子象是用的smarty模版,你可以查一下,smarty里有专门处理时间格式的函数的,简单调用一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询