如何在php中分解数组中的数组

如何在php中分解数组中的数组,php,Php,我有一个数组包含如下值: Check_Value ('level_codes', '1000', '1001','(1000,1002,1004)', 'DO ', '1')==1 我想获取值并存储到其他参数中,如: $codes = level_codes; $first_value = 1000; $second_value = 1001; $list_values = (1000,1002,1004); $action = DO; $timer = 1; $case = ==; $sta

我有一个数组包含如下值:

Check_Value ('level_codes', '1000', '1001','(1000,1002,1004)', 'DO ', '1')==1
我想获取值并存储到其他参数中,如:

$codes = level_codes;
$first_value = 1000;
$second_value = 1001;
$list_values = (1000,1002,1004);
$action = DO;
$timer = 1;
$case = ==;
$status = 1;

有没有人请帮我做这项工作

使用list()函数:

使用list()函数:

如果顺序始终相同,则以下操作会将值重新分配给所需的变量:

$parts = preg_split("/'?\(|\)'?/", $original_values);
$sub1 = explode(',', $parts[1]);
$codes = trim(str_replace("'", '', $sub1[0])) ;
$first_value = trim(str_replace("'", '', $sub1[1]));
$second_value = trim(str_replace("'", '', $sub1[2]));
$list_values = "($parts[2])";
$sub2 = explode(',', $parts[3]);
$action = trim(str_replace("'", '', $sub2[1]));
$timer = trim(str_replace("'", '', $sub2[2]));
preg_match('/(\D+)(\d+)/', $parts[4], $matches);
$case = $matches[1];
$status = $matches[2];

可能有一种更优雅的方法,但原始值是一个字符串,而不是一个数组。

如果顺序始终相同,则以下操作会将值重新分配给所需的变量:

$parts = preg_split("/'?\(|\)'?/", $original_values);
$sub1 = explode(',', $parts[1]);
$codes = trim(str_replace("'", '', $sub1[0])) ;
$first_value = trim(str_replace("'", '', $sub1[1]));
$second_value = trim(str_replace("'", '', $sub1[2]));
$list_values = "($parts[2])";
$sub2 = explode(',', $parts[3]);
$action = trim(str_replace("'", '', $sub2[1]));
$timer = trim(str_replace("'", '', $sub2[2]));
preg_match('/(\D+)(\d+)/', $parts[4], $matches);
$case = $matches[1];
$status = $matches[2];

可能有一种更优雅的方法,但原始值是一个字符串,而不是一个数组。

如果数组是字符串,我想你应该研究一下

如果数组是字符串,我想你应该研究一下

顺序是否总是一样的?上面的似乎不是数组,更像是将大量参数传递到函数中?Check_Value是数组的名称吗?Check_Value是作为字符串存储在数据库表中的函数名称。顺序是否始终相同?上面的似乎不是数组,更像是将大量参数传递给函数?Check_值是数组的名称吗?Check_值是作为字符串存储在数据库表中的函数名称。