2013/03/04

超strtotime という日付書式をパースするAPI

超strtotime」というAPIサービスを見つけたので少しあそんでみます。PHPerならわかると思うのですが、strtotimeという関数が品祖なので、それのすごいバージョン(API)らしいです。日本語の書式とかもパースできるみたいです。有用性がいまいちわからなかったのですが、とりあえず面白かったので記事にしました。

API仕様

strtoti.meに続けて日付文字列を渡すとJSON形式で返ってくるようです。

http://strtoti.me/日付文字列   (GET)

レスポンス例

こんな感じで返ってきます。timestamp値があれば、date関数で再フォーマットできますね。
{
    "gen":"",
    "year":2012,
    "month":11,
    "day":11,
    "mmdd":"1111",
    "show_year":
    "2012\u5e74",
    "timestamp":1352559600
}

サンプル

JavaScriptで、入力された日付をタイムスタンプに変換する簡単な例を作成してみました。
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
    $('#btn').click(function() {
        var $this = $(this);
     $.getJSON('http://strtoti.me/'+encodeURI($this.attr('src'))+'&callback=?', {}, function(json) {
         $('#ts').text(json.timestamp);
     })
 });
});
</script>
</head>
<body>
<div>
 <form>
 <input type="text" name="date"><button id="btn">変換</button>
 </form>
 <span id="ts">ここに結果が表示されます</span>
</div>
</body>
</html>

まとめ

確かに、PHPのstrtotimeは品祖なんだよなー。APIの有用性はおいといて。それだけは、共感できると思いつつも、いろんなAPIがあるんだなぁということを痛感した。

0 件のコメント:

コメントを投稿