Преобразуйте массив PostgreSQL в массив PHP

Я испытываю затруднения при чтении массивов Postgresql в PHP. Я попробовал, взрываются (), но это повреждает массивы, содержащие запятые в строках и str_getcsv (), но это также бесполезно, поскольку PostgreSQL не заключает японские строки в кавычки.

Не работа:

explode(',', trim($pgArray['key'], '{}'));
str_getcsv( trim($pgArray['key'], '{}') );

Пример:

// print_r() on PostgreSQL returned data: Array ( [strings] => {または, "some string without a comma", "a string, with a comma"} )

// Output: Array ( [0] => または [1] => "some string without a comma" [2] => "a string [3] => with a comma" ) 
explode(',', trim($pgArray['strings'], '{}'));

// Output: Array ( [0] => [1] => some string without a comma [2] => a string, with a comma ) 
print_r(str_getcsv( trim($pgArray['strings'], '{}') ));
32
задан EarthMind 18 June 2010 в 11:25
поделиться

1 ответ

Я вижу, что вы используете explode(',', trim($pgArray, '{}'));

Но explode используется для разделения строки на строки (а вы передаете ей массив!!). Что-то вроде ...

$string = "A string, with, commas";
$arr = explode(',', $string);

Что вы пытаетесь сделать с массивом? Если вы хотите конкатенировать, посмотрите на implode

ИЛИ Не уверен, что вы можете указать разделитель, отличный от запятой? array_to_string(anyarray, text)

0
ответ дан 27 November 2019 в 19:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: