在yii中显示友好的时间格式
来源:互联网 发布:算法提供者错误 编辑:程序博客网 时间:2024/05/21 17:04
最近在写yii中文百科的程序时遇到了这个问题,本来我一直习惯的是 date("Y-m-d H:i",$time)
的方式。 不过现在很多的网站时间显示为几分钟前
、几小时前
、几周前
...为了追赶潮流我也写了个方法来实现它。
关于yii里面的格式
yii框架为我们提供了把一些字符串、时间戳等数据格式化为指定格式的类 CFormatter,我使用的方法就是继承了它,然后在配置文件里面修改一下配置就可以直接使用了。
Formatter 代码如下
[php]class Formatter extends CFormatter{ public function formatFriendlyDate($timestamp){ $second = time()-$timestamp; switch (true){ case $second < 3600: $m = round($second/60); if($m == 0 ){ return "刚刚"; } return round($second/60).' 分钟前'; case $second < 86400: return round($second/3600).' 小时前'; case $second < (86400*7): return round($second/86400).' 天前'; case $second < (86400*7*4): return round($second/(86400*7)).' 周前'; default : return $this->formatDatetime($timestamp); } }}
配置文件中
[php]...'components' => array( ... 'format' => array( 'class' => "Formatter", ), ...),...
怎么使用?
接下来就是在程序中来使用了,方法如下,
[php]echo Yii::app()->format->formatFriendlyDate($timestamp);
如果你觉得这样使用比较麻烦,你也可以在控制器(Controller)的基类中定义
[php]public function formatDate($timestamp){ return Yii::app()->format->formatFriendlyDate($timestamp);}
在视图(View)中就可以使用比较简单的方法
[php]echo $this->formatDate($timestamp);
以上方法只是说明一下,具体的还是需要根据具体需求来完善。
希望上面的内容对您有用
0 0
- 在yii中显示友好的时间格式
- java 友好的显示时间
- Yii 数据显示时间格式
- Java基础之时间的友好显示
- 友好的显示时间 PHP端
- 友好时间显示的javascript代码
- php比较全的友好时间显示
- swift 显示友好时间
- PHP 友好时间显示
- 在GridView显示时间列时,设置时间的格式
- c#显示友好时间代码
- PHP比较全的友好的时间显示
- 一对多 如何使多的一端信息在页面上同一行中友好显示
- Java中时间显示格式
- yii在列表中显示分类名称
- asp.net中的GridView中显示的时间格式
- .Net中,绑定控件的时间显示格式
- .Net中,绑定控件的时间显示格式
- Yii应用目录结构
- PHP文字拼音
- 上机题目(中级)- 两个超级大的整数相加相减 (Java)
- 函数:PHP将字符串从GBK转换为UTF8字符集iconv
- php 垃圾回收机制 写时复制和引用计数
- 在yii中显示友好的时间格式
- Smile Format
- Linux下的softlink和hardlink
- PHP垃圾回收机制的理解
- 杭电1000
- 异常初探(三)
- 笨方法学python(ex1-17)--%,input,解包,读取,写文件
- 使用NFS文件系统实现数据同步
- (一)01汤姆猫小游戏