将包含逗号分隔数字的大括号字符串解析为平面数组

问题描述 投票:0回答:4

有没有办法将下面所示形式的字符串转换为 PHP 中的数组?

{1,2,3,4} 

字符串存储在这样的数据库中,我不控制将内容插入数据库的方式。

php arrays text-parsing
4个回答
1
投票

将其转换为有效的json数组,然后对其进行json_decode?

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

0
投票

只需删除前导和尾随大括号,然后使用explode 将字符串按逗号分割:

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

0
投票

只需修剪括号,然后爆炸

$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 中,您只需添加每个垃圾字符。

© www.soinside.com 2019 - 2024. All rights reserved.