日時データを経過時間に変換するPHPとJAVASCRIPTの方法

日時データ(2014-05-01 23:59:59)をTwitterなどで使われている「○秒前」「○分後」「○時間前」「○日前」のような表記に変換するには、以下のスクリプトを使う。

いずれも「created_at」に「2014-05-01 23:59:59」のような形式のデータを渡すものとする。

Javascriptで使う場合

JAVASCRIPT

function (created_at){
var created_at = Date.parse(created_at);
var now = (new Date()).getTime();
var passage = (now - created_at) / 1000;
if(passage < 60){
passage = Math.ceil(passage);
return passage + '秒前';
}
if(passage < 3600){
passage = Math.ceil(passage / 60);
return '約' + passage + '分前';
}
if(passage < 3600 * 24){
passage = Math.ceil(passage / 3600);
return '約' + passage + '時間前';
}
passage = Math.ceil(passage / ( 3600 * 24));
return passage + '日前';
}

phpで使う場合

PHP

function created_time($created_at){
$created = strtotime($created_at);
$passage = time() - $created;
if($passage < 60){
$passage = round($passage);
return $passage . "秒前";
}
if($passage < 3600){
$passage = round($passage / 60);
return "約" . $passage . "分前";
}
if($passage < 3600 * 24){
$passage = round($passage / 3600);
return "約" . $passage . "時間前";
}
$passage = round($passage / ( 3600 * 24));
return $passage . "日前";
}
 

デジタルゲートがお手伝い

ホームページをリニューアルしたい、スマホ対応にしたい、デザインそのままで機能だけ追加したい、更新だけ代行して欲しい。サイトを運営したいけど誰に相談したらいいか分からない。そんな時はお気軽にお問い合わせください。

スポンサーリンク