2015-02-16 6 views
0

Есть ли способ преобразовать строку в форму, показанную ниже, в массив в PHP?Преобразование в массив для PHP

{1,2,3,4} 

Строка хранится в базе данных, подобной этой, и я не контролирую, как вещи вставляются в базу данных.

+0

Непонятно, что вы действительно хотите. Каков ваш вклад и ожидаемый результат. –

+0

Он хочет преобразовать эту строку в массив –

ответ

1

Преобразование его в действительный массив JSON, то json_decode это?

$data = '{1,2,3,4}'; 
$d = json_decode(str_replace(['{','}'], ['[',']'], $data)); 
var_dump($d); 
+0

, делая явно не-json-строку json-like, просто чтобы использовать json_decode, кажется мне неподходящим. На мой взгляд, подходящим способом было бы выяснить, в каком формате находится исходная строка, и посмотреть, есть ли для этого некоторые вспомогательные функции. Если найти нечего, работайте с манипуляцией с php-строкой. –

0

Просто удалить ведущие и завершающие фигурные скобки, а затем использовать взрываются разбить строку с помощью запятых:

$str = "{1,2,3,4}"; 
$csv = substr($str, 1, -1); /* remove braces */ 
$array = explode(",", $csv); /* split */ 
print_r($array); 
0

trim Просто скобки, то explode.

$string = '{1,2,3,4}'; 
$array = explode(',', trim($string, '{}'));  
var_dump($array); 
0

Вы просто должны сделать:

$string = "{1,2,3,4,5}"; 
$array = explode(',', str_replace(array('{', '}'),'', $string)); 
print_r($array); 

В функции str_replace вы просто добавить каждый мусорный характер.

Смежные вопросы