Cita: hay manera de que rompan if($_request['valor'] =='persona')
y consigan que les de un true?
No, no se puede "romper" una condición lógica estática que es inamovible.
Es decir, mientras un lado de la expresión siempre sea fija y el origen de la otra expresión nunca cambie, entonces jamás pasará algo mal ahí.
Cita: como no estoy muy seguro lo que se me ocurrio es hacer una funcion parecida a la de mysqli mysql_real_escape_string para evitar ataques contra la base de Datos...
1. Escapar dichos datos antes de hacer una comparación en PHP es sencillamente inútil.
Los datos no hacen daño sino hasta que se introducen a la base de datos, y justo ahí es donde uno debe escapar apropiadamente: no antes.
2. Es un error pensar que por "sanitizar" los datos al recibirlos evitamos ataques.
De hecho usar tus propias funciones sólo empeora las cosas, lo correcto es usar consultas preparadas y dejar que el driver de la base de datos haga su trabajo.
¿O no preparas tus consultas?