过滤字符串并存储在数组中

时间:2016-05-02 05:22:35

标签: php codeigniter

我有一个字符串。

  

$ a ='[{“size”:“6Y”,“数量”:15}]';

我想在阵列中存储6Y和15。 请帮帮我。

4 个答案:

答案 0 :(得分:1)

使用json_decode()

你有一个json编码的字符串。

需要对其进行解码并为数组指定大小和数量。

工作示例:

<?php
$a = '[{"size":"6Y","quantity":15}]';
$b = json_decode($a, TRUE);
$c = array();
if (! empty($b[0])) {
    foreach ($b[0] as $k => $v) {
        $c[$k] = $v;        
    }
}
echo '<pre>';print_r($c);echo '</pre>';
?>  

<强>输出:

Array
(
    [size] => 6Y
    [quantity] => 15
)

答案 1 :(得分:1)

call_user_func_arrayarray_merge

一起使用
  1. Json解码你的字符串
  2. 展平数组
  3. 像这样:

    <?php
    $a = '[{"size":"6Y","quantity":15}]';
    $b = call_user_func_array('array_merge', json_decode($a,true));
    print_r($b);
    

    输出:

    Array
    (
        [size] => 6Y
        [quantity] => 15
    )
    

答案 2 :(得分:0)

试试这个,使用json_decode:

<?php
$a = '[{"size":"6Y","quantity":15}]';
$a = substr($a, 1, -1);
print_r((array)json_decode($a));
?>

答案 3 :(得分:0)

$a = '[{"size":"6Y","quantity":15}]';
$v = json_decode($a);
print_r(array_values($v));