<?php
$arg1 = "['1']";
$arg2 = "['2']";
$arg3 = "['3']";
$_SESSION['1']['2']['3'] = 'zzzz';
function setKey($session_keys, $val) {
$current_key = '';
$counter = 0;
$prev_step = &$_SESSION;
$tmp = &$prev_step;
$session_keys_array = explode(':', $session_keys);
foreach ($session_keys_array as $key) {
if (is_array($tmp[$key])) {
$tmp = &$tmp[$key];
var_dump($tmp);
} else {
$tmp = $val;
var_dump($tmp);
}
}
}
setKey('1:2:3',5);
// var_dump($_SESSION);
- Output for 5.5.24 - 5.5.35, 5.6.8 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.29, 8.2.0 - 8.2.23, 8.3.0 - 8.3.11
- array(1) {
[2]=>
array(1) {
[3]=>
string(4) "zzzz"
}
}
array(1) {
[3]=>
string(4) "zzzz"
}
int(5)
preferences:
50.72 ms | 408 KiB | 5 Q