从内爆函数中获取数组值

时间:2014-06-13 17:50:24

标签: php

所以我有这个变量 $ _ GET ,它接收诸如

之类的值
set=QnVzaW5lc3M=|RmluYW5jZQ==

这些值使用base64_encode()进行了base64,然后用分隔符' | '分隔。我使用implode函数生成set变量的值。

现在,问题是,如何将set变量中的值转换为数组,base64也将它们解码?

欢迎任何建议。 我试过这个: -

$test = array();
$test = explode('|', $_GET['set']);
var_dump($test);

这会抛出不可用的值。 但这没有任何区别。

2 个答案:

答案 0 :(得分:5)

$data = 'QnVzaW5lc3M=|RmluYW5jZQ==';
$result = array_map(
    'base64_decode',
    explode('|', $data)
);
var_dump($result);

答案 1 :(得分:1)

这应该可以使用foreach

// Set the test data.
$test_data = 'QnVzaW5lc3M=|RmluYW5jZQ==';

// Explode the test data into an array.
$test_array = explode('|', $test_data);

// Roll through the test array & set final values.
$final_values = array();
foreach ($test_array as $test_value) {
  $final_values[] = base64_decode($test_value);
}

// Dump the output for debugging.
echo '<pre>';
print_r($final_values);
echo '</pre>';

输出是这样的:

Array
(
    [0] => Business
    [1] => Finance
)