Я испытываю затруднения при чтении массивов 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'], '{}') ));
Я вижу, что вы используете explode(',', trim($pgArray, '{}'));
Но explode используется для разделения строки на строки (а вы передаете ей массив!!). Что-то вроде ...
$string = "A string, with, commas";
$arr = explode(',', $string);
Что вы пытаетесь сделать с массивом? Если вы хотите конкатенировать, посмотрите на implode
ИЛИ Не уверен, что вы можете указать разделитель, отличный от запятой? array_to_string(anyarray, text)