是否有一个很好的PHP代码片段将postgresql hstore转换为php数组,这将正确地将hstore中的不带引号的NULL转换为php NULL?
EG:假设我们有以下hstore字符串:
"k1"=>"v1", "k2"=>NULL, "k3"=>"NULL", "k4"=>"\"v4"
(aka SELECT '"k1"=>"v1","k2"=>NULL,"k3"=>"NULL","k4"=>"\\"v4"'::hstore;)
Run Code Online (Sandbox Code Playgroud)
我们如何将其转换为以下php数组?
array('k1'=>'v1','k2'=> NULL,'k3'=>'NULL','k4'=>'\"v4');
我遵循以下转换器但它似乎没有处理不带引号的NULL:https://github.com/chanmix51/Pomm/blob/master/Pomm/Converter/PgHStore.php
我相信语法会是这样的:
$pdo = new PDO( /*connection string*/ );
// h is the hstore column.
$stmt = $pdo->query( "SELECT (each(h)).key, (each(h)).value FROM <table name>" );
$output = array();
foreach( $stmt->fetchAll( PDO::FETCH_NUM ) as $row )
{
// $row[ 0 ] is the key, $row[ 1 ] is the value.
$output[ $row[ 0 ] ] = $row[ 1 ];
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4719 次 |
最近记录: |