Foros del Web » Programando para Internet » PHP »

No mostrar errores en variables no declaradas (Function)

Estas en el tema de No mostrar errores en variables no declaradas (Function) en el foro de PHP en Foros del Web. Hola, estoy haciendo una especie de framework de funciones facilitadas en PHP. Asi que hice la siguiente función: Código PHP:      function  borrar ( $archivo ...
  #1 (permalink)  
Antiguo 18/10/2009, 12:32
 
Fecha de Ingreso: diciembre-2008
Ubicación: Mi Casa =D
Mensajes: 292
Antigüedad: 15 años, 4 meses
Puntos: 5
No mostrar errores en variables no declaradas (Function)

Hola, estoy haciendo una especie de framework de funciones facilitadas en PHP.

Asi que hice la siguiente función:

Código PHP:
    function borrar($archivo$mensaje_correcto$mensaje_error){ //El mensaje de error y el mensaje correcto los puedes sin definir.
        
if(@unlink($archivo)){
            if(isset(
$mensaje_correcto)){
                echo 
$mensaje_correcto;
            } else {
                echo 
'Archivo Borrado Correctamente';
            }
        } else {
            if(isset(
$mensaje_error)){
                echo 
$mensaje_error;
            } else {
                echo 
'Ocurrió Un Error Al Borrar Archivo';
                if(!
file_exists($archivo)){
                    echo 
': El Archivo No Existe';
                }
            }
        }
    } 
Y llamé a la función así:
Código PHP:
echo borrar('a'); 
Lo que muestra es lo siguiente:
Código:
Warning: Missing argument 2 for borrar(), called in C:\wamp\www\funciones.php on line 126 and defined in C:\wamp\www\funciones.php on line 101

Warning: Missing argument 3 for borrar(), called in C:\wamp\www\funciones.php on line 126 and defined in C:\wamp\www\funciones.php on line 101
Ocurrió Un Error Al Borrar Archivo: El Archivo No Existe
Mi pregunta es... como puedo hacer para que no muestre los "Warnign's" cuando no se declaró la variable dentro de la función.

Espero su respuesta :)

Última edición por alex1195; 18/10/2009 a las 12:39
  #2 (permalink)  
Antiguo 18/10/2009, 12:40
Avatar de Animeonx  
Fecha de Ingreso: agosto-2009
Ubicación: Debajo de tu Cama
Mensajes: 56
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: No mostrar errores en variables no declaradas (Function)

Que tal así.

Código PHP:
    function borrar($archivo$mensaje_correcto=NULL$mensaje_error=NULL){ 
        if(@
unlink($archivo)){
            if(isset(
$mensaje_correcto)){
                echo 
$mensaje_correcto;
            } else {
                echo 
'Archivo Borrado Correctamente';
            }
        } else {
            if(isset(
$mensaje_error)){
                echo 
$mensaje_error;
            } else {
                echo 
'Ocurrió Un Error Al Borrar Archivo';
                if(!
file_exists($archivo)){
                    echo 
': El Archivo No Existe';
                }
            }
        }
    }  
echo 
borrar('a'); 
  #3 (permalink)  
Antiguo 18/10/2009, 12:54
 
Fecha de Ingreso: diciembre-2008
Ubicación: Mi Casa =D
Mensajes: 292
Antigüedad: 15 años, 4 meses
Puntos: 5
Respuesta: No mostrar errores en variables no declaradas (Function)

=O! No me sabía la magia de las variables NULL!
xDD gracias amigo.

Pero, podrías explicarme exactamente que acabo de hacer con "NULL"?

Le estoy indicando a la consola que la variable es nula, por lo tanto si no es definida no la toma en cuenta?.

Espero tu respuesta y grácias de nuevo
  #4 (permalink)  
Antiguo 18/10/2009, 13:10
Avatar de Animeonx  
Fecha de Ingreso: agosto-2009
Ubicación: Debajo de tu Cama
Mensajes: 56
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: No mostrar errores en variables no declaradas (Function)

El valor NULL, es solo para que inicialices tu variable sin ningún valor.
A mi me gusta usar mas NULL, pero también puedes inicializar tu variable así, $var=''; que seria lo mismo.

Pasándolo a la función, se diría que esas variables se les puede modificar su valor pero no son indispensables para que la función se ejecute.

borrar('a'); <- esto se ejecuta correctamente.
borrar('a','b','c'); <- estos también.

Referencias.
php-es.com/language.types.null.html

Última edición por Animeonx; 18/10/2009 a las 13:14 Razón: Extencion de respuesta
  #5 (permalink)  
Antiguo 18/10/2009, 13:22
 
Fecha de Ingreso: diciembre-2008
Ubicación: Mi Casa =D
Mensajes: 292
Antigüedad: 15 años, 4 meses
Puntos: 5
Respuesta: No mostrar errores en variables no declaradas (Function)

=O! grácias, ya comprendo :) cada día se aprende algo nuevo xD
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:54.