Cita: la solución fue declarar la variable como global para poderla usar fuera de la función que puse
Pues esa no es una "solución", es una hack horrible y poco confiable.
De hecho, y según te expresas se nota que no sabes usar funciones: y precisamente ese es su objetivo, si necesitas capturar un valor que está dentro de la función debes usar return.
Y entonces, fuera de la función (donde la invocas) es que asignas el valor de retorno, y a partir de ahí ya puedes usar dicho valor:
Código PHP:
Ver originalfunction foo() {
return 'bar';
}
$x = foo();
echo $x; // bar
Pero bueno, por más que uno se esforzó en orientarte creo que no quisiste entender y terminaste "corrigiendo" de muy mala gana.
Así debiste dejar tu código:
Código PHP:
Ver originalfunction process_files(){
// $_FILES ya es global, no hace falta pasarla como argumento
$destination_path = "archivos/";
$result = FALSE; // FALSE tiene más sentido que "0"
echo $_FILES['tiquet']['name'];
$nombre_archivo = $_FILES['tiquet']['name'];
$ext = $_FILES['tiquet']['type'];
$tamano = $_FILES['tiquet']['size'];
$target_path = $destination_path . basename( $_FILES['tiquet']['name']); $result = 1; // acá no sirve de nada el 1, ¿entonces para qué hacerlo?
$codigo_fecha = date("YmdHis"); $no_aleatorio = rand(100, 999); $codigo = $codigo_fecha.$no_aleatorio;
$nombre_actual = "$codigo"."."."$ext" ;
rename("archivos/$nombre_archivo","archivos/$nombre_actual");
// "archivos/$nombre_actual" es el valor de retorno
$result = "archivos/$nombre_actual";
}
// OK, devolvemos todo
return $result;
}
// invocamos la función
$x = process_files();
// $x es ahora el valor del return
// no era necesario hacer global $result
// sólo debes aprender a leer el manual con calma