2010年2月14日日曜日

Posql Version 2.15 リリース。UNION実装

Posql Version 2.15 をリリースしました。

ダウンロード:
    posql-2.15.zip
    posql-2.15.tar.gz

Version 2.15 は色々と面白い実装してます。

  • UNION, INTERSECT, EXCEPT [ALL] 演算子の実装。

サブクエリ内でも UNION できます。

SELECT 1 A, 2 B, 3 C
UNION 
SELECT 4, 5, 6 
UNION
SELECT 7, 8, 9
EXCEPT 
SELECT 4, 5, 6;
/*
結果: A  B  C
      1, 2, 3
      7, 8, 9
*/

とかもできます。

あと、今まではエイリアス名を指定する演算子が AS のみだったのを改善して、
ホワイトスペース区切りでも適応可能になりました。

  • Posql_ECMA クラスは JavaScript の String オブジェクト関数の殆どを互換実装。

新しいクラスも実装されています。
Posql_ECMA クラスは、ECMA/JavaScript における
String オブジェクトが持つ関数の殆どを
ピュア PHP で実装しています。
Posql_Unicode を適応してるので 内部文字コードも JavaScript と同じです。

Posql_ECMA は まだ実装のみでロジック内に取り入れていませんが、
今後の評価エンジンに採用する予定です。
ライブラリとして利用する場合は、

<?php
$posql = new Posql;
$code = $posql->ecma->charCodeAt("あいうえお", 2);
echo $code; // output: 12358
$char = $posql->ecma->fromCharCode($code);
echo $char; // output: 'う'
?>

↑みたいなことができます。 ecma プロパティからアクセスできます。

  • AlphamericHTMLをPHPに移植したクラス Posql_Archive

Posql_Archive クラスでは、Lz77 圧縮アルゴリズムを用いた、
日本語に特化したエンコード・デコード関数を実装しています。

JavaScript ライブラリ「AlphamericHTML」を PHP で実装してしまいました。
使い方とかは 次のPOST を参考にしてみてください。

その他、いくつかのバグを修正しました。
LIKE に バグがあったのは恥ずかしいです。

0 コメント:

コメントを投稿