所以我有这个变量 $ _ GET ,它接收诸如
之类的值set=QnVzaW5lc3M=|RmluYW5jZQ==
这些值使用base64_encode()进行了base64,然后用分隔符' | '分隔。我使用implode函数生成set变量的值。
现在,问题是,如何将set变量中的值转换为数组,base64也将它们解码?
欢迎任何建议。 我试过这个: -
$test = array();
$test = explode('|', $_GET['set']);
var_dump($test);
这会抛出不可用的值。 但这没有任何区别。
答案 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
)