3v4l.org

run code in 300+ PHP versions simultaneously
<?php #$str = 'subvar'; #var_dump(explode(':',$str)); exit; $arr = array('var'=> array('notouch')); function strAssign(&$arr,$str,$val){ if(!empty($str)){ $str = explode(':',$str); $key = array_shift($str); $arr[$key] = array(); strAssign($arr[$key],implode(':',$str),$val); }else{ $arr = $val; } } strAssign($arr,'var:sub:sub2','value'); var_dump($arr);

preferences:
43.87 ms | 402 KiB | 5 Q