在DM中将数组格式化字符串解析为数组

时间:2014-08-30 12:03:59

标签: php arrays

我有一个存储在变量中的数组格式化字符串,我需要将其转换为实数数组

这是我的代码

$hello ="array( 
    'numberposts' => -1, 
    'post_type' => 'post', 
    'meta_query' => array( 
        'relation' => 'AND',
             array( 
                'key' => 'subject_id', 
                'value' => 'CE6301', 
                'compare' => '=' 
                ),
             array( 
                'key' => 'regulation', 
                'value' => '2013', 
                'compare' => '=' 
                ),
             )
    )";

所以这是一个我需要在php中转换为格式化数组的数组

所以当打印我的数组时,它应该看起来像这样

Array ( [numberposts] => -1 [post_type] => post [meta_query] => Array ( [relation] => AND [0] => Array ( [key] => subject_id [value] => CE6301 [compare] => = ) [1] => Array ( [key] => regulation [value] => 2013 [compare] => = ) ) )

我必须在php中使用什么函数将字符串数组转换为普通数组

1 个答案:

答案 0 :(得分:1)

我不知道你是怎么掌握这个的,但你可以在这个上使用eval()。只需稍微修改字符串即可在最后创建一个有效的数组。例如:

$hello ="array( 
    'numberposts' => -1, 
    'post_type' => 'post', 
    'meta_query' => array( 
        'relation' => 'AND',
             array( 
                'key' => 'subject_id', 
                'value' => 'CE6301', 
                'compare' => '=' 
                ),
             array( 
                'key' => 'regulation', 
                'value' => '2013', 
                'compare' => '=' 
                ),
             )
)";

$hello = '$hello = ' . $hello . ';';
eval($hello);
echo '<pre>';
print_r($hello);