Привет, может кто-нибудь помочь мне с созданием расширенной функции addlashes, которая будет работать со смешанной комбинацией объектов и массивов.Например, у меня есть этот объект:
$object = new stdClass;
$object2 = new stdClass;
$object2->one = "st'r2";
$object3 = new stdClass;
$object3->one = "st'r3";
$object->one = "s'tr";
$object->two = array($object2);
$object->obj = $object3;
И я бы хотел, чтобы этот объект снова был экранирован и с той же структурой.Я начал некоторые эксперименты, и я получил что-то вроде этого:
function addslashes_extended($arr_r){
if(is_array($arr_r)){
foreach ($arr_r as $key => $val){
is_array($val) ? addslashes_extended($val):$arr_r[$key]=addslashes($val);
}
unset($val);
}else if(is_object($arr_r)){
$objectProperties = get_object_vars($arr_r);
foreach($objectProperties as $key => $value){
is_object($value) ? addslashes_extended($value):$arr_r->{$key}=addslashes($value);
}
}
return $arr_r;
}
Но это не сработает, я думаю, мне нужно работать с передачей по ссылке, но я понятия не имею, как другие решения будутхорошо бы тоже, заранее спасибо!