sqlite_libencoding

(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)

sqlite_libencodingリンクされているSQLiteライブラリのエンコーディングを返す

説明

sqlite_libencoding ( void ) : string

SQLiteライブラリは、ISO-8859-1またはUTF-8 互換モードのどちらかでコンパイルすることができます。この関数により、 使用するライブラリのエンコーディングを特定することが可能です。

警告

デフォルトのPHPのディストリビューションでは、libsqliteISO-8859-1エンコーディングモードで構築します。しかし、この名前は誤りです。 ISO-8859-1を処理するというのではなく、 このモードは文字列の比較やソートに使用するカレントのロケールを使用します。 このため、ISO-8859-1ではなく、'8ビット'とみなすべきです。

UTF-8サポートを指定してコンパイルした場合、sqliteは データ中の UTF-8マルチバイト文字のエンコードおよびデコードを行います。 しかし、データ処理を完全に行うことはまだできず (例えば、正規化は行われません)、いくつかの比較処理は、まだ、正しく行うことができません。

警告

UTF-8サポートを指定してコンパイルされたバージョンのSQLite ライブラリを組み込んでWebサーバー版のPHPを使用することは推奨されません。 これは、UTF-8エンコーディングで問題が検出された場合にlibsqlite がプロセスを強制終了するためです。

返り値

ライブラリのエンコーディングを返します。

参考

  • sqlite_lib_version()