function deAspisRC($var) { global $ASPIS_INFO_COLLECT; if ($ASPIS_INFO_COLLECT) { AspisLogExamine($var); } $ret = $var[0]; //no object handling, see the R version if (is_array($ret)) { $retn = array(); foreach ($ret as $key => $value) { $retn[$key] = deAspisRC($value); } return $retn; } else { return $ret; } }
function Aspis_strtr($str, $replace_pairs) { if (func_num_args() == 3) { $arg3 = func_get_arg(2); return array(strtr($str[0], $replace_pairs[0], $arg3[0]), AspisTaintBareCopy($str[1])); } else { $pairs = deAspisRC($replace_pairs); return array(strtr($str[0], $pairs), AspisTaintBareCopy($str[1])); } }