BLOGTIMES
2006/10/23

Jsphon

  php  pear  javascript 
このエントリーをはてなブックマークに追加

Chart (WebFX)を使ってJavaScriptでグラフを作っていたんですが、PHPからJavaScriptを生成する処理を書いていると、おのずとPHPの中にJavaScriptが埋まっているような状態になるわけですが、これがかなり汚いのでちょっと整理することにしました。とりあえず、phpが吐くのはJSON形式のデータだけにして、JavaScriptからはAJAXで呼び出してeval()することによって動作させることにします。

そんなときに「PHPの変数→JSON」ということをやってくれるライブラリが欲しくなるわけですが、今回は王道のPEAR::Service_JSONではなく、Hawkさんの作ったJsphonを使ってみました。ライセンスはPHP License 3.0のようです。

Hawk's Laboratory Jsphon - JSON in PHP

Jsphon。pure PHPで書かれたJSONライブラリ。
Services_JSON等との機能比較表も作っておいた。まとめると、
* エラー処理も含めてPHP4/5両対応
* マルチバイト文字列処理にこだわりがある
あたりがJsphonの特長となる。逆にJSON仕様に含まれない独自機能などはない。またJSONのオブジェクト {}は常に連想配列に変換される

上記にも書かれていますが、Service_JSONと機能的には互換であり、日本語関係の機能が充実していて、PEARへの依存がないということが決め手になりました。

使い方

「PHPの変数→JSON」については基本的にencode()を呼ぶだけで完了です。
何も難しいことはありません。

require_once('Jsphon.php'); $value = array('a' => '1') mb_convert_variables('UTF-8', mb_internal_encoding(), $value); $json = Jsphon::encode($value); echo $json;

AJAXって人の作ったアプリを使って結構感動することが多かったんですけど、自分で作るとさらに感動が大きいですね。。。。。


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/1676
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン