私はPostgreSQLのHSTOREデータ型とPHPを扱っています。PostgreSQLのHSTOREをPHPの配列に変換する
私はPHPの配列にPostgreSQLの返さhstoreの文字列を変換する機能を必要とします。私はで述べたように、私は値を保存し、私は次のような値に遭遇したとき、それを取得しようとただしたときfromPg()メソッドは、[2] [この記事を] hereを定義して使用してみました:
"myKey" => "my\"Value"
... fromPg()メソッドは、値を2つの配列エントリに分割します。最初のキーはキー "myKey"、値は "my \"、2番目のキーは "値\" "とブランク誰がこの問題を抱えている場合、誰かがそれは同等だPHPの配列にhstoreの文字列を変換するより機能的な方法を提供することをいとわないならば値が。
私は思ったんだけど。
私は最終的に分解され、具体的に取り組むために設計された私自身のPHPライブラリを作成しました<?php
function fromPg($data) {
$split = preg_split('/[,\s]*"([^"]+)"[,\s]*|[,=>\s]+/', $data, 0, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
$hstore = array();
for($index = 0; $index < count($split); $index = $index + 2) {
$hstore[$split[$index]] = $split[$index + 1] != 'NULL' ? $split[$index + 1] : null;
}
return $hstore;
}
$hstore_string = '"myKey" => "my\"Value"';
$hstore_array = fromPg($hstore_string);
print '<pre>';
print_r($hstore_array);
print '</pre>';
:ここに
は、私は、既存の「解決策」を抱えている問題を再現するコードサンプルですこの問題だけでなく、などそれはでGitHubの上で利用できる自動検出とPostgreSQL Hstoresの変換、アレイ、日付、幾何データ型などPHPのPostgreSQLのドライバの他の多くの欠点:https://github.com/JDBurnZ/PHPG
可能な複製[postgresql hstoreをPHP配列に変換](http://stackoverflow.com/questions/6742563/convert-postgresql-hstore-to-php-array) – plaes