Retroceder   Foros del Web > Programación para sitios web > PHP > PHP orientado a objetos

Respuesta
 
Herramientas Desplegado
Antiguo 11-abr-2008, 12:46   #1 (permalink)
emiliodeg está en el buen camino
 
Avatar de emiliodeg
 
Fecha de Ingreso: septiembre-2005
Mensajes: 744
Información Colaboración: Clase Cookie

Bueno como un terrible aficinado al PHP y sobre todo al POO, quiero dejar aqui mi primer aporte, aunque pequeño y simplón amí ha servido bastante esta clase para manejar Cookies, aqui la clase y mas abajos algunas pruebas
Código PHP:
/*********************
* Clase Cookie v0.2.1  *
* www.developtus.com *
**********************/
class Cookie{
        public static function 
set($cookieName,$value='',$time=3600,$path=null,$domain=null,$httpOnly=false){
            
setcookie($cookieName,$value,time()+(int)$time,$path,$domain,(bool)$httpOnly);
            
$_COOKIE[$cookieName]=$value;
        }
        public static function 
get($cookieName,$defaultValue=''){
            return 
self::exists($_COOKIE[$cookieName])?$_COOKIE[$cookieName]:$defaultValue?$defaultValue:false;
        }
        public static function 
del($cookieName,$value='',$time=-3600,$path=null,$domain=null,$httpOnly=false){
            
self::set($cookieName,$value,$time,$path,$domain,$httpOnly);
            unset(
$_COOKIE[$cookieName]);
        }
        public static function 
exists($cookieName){
            return isset(
$_COOKIE[$cookieName]);
        }
        public static function 
isEmpty($cookieName){
            return empty(
$_COOKIE[$cookieName]);
        }
        public static function 
delAll(){
            
$count=count($_COOKIE);
            
$names=array_keys($_COOKIE);
            for(
$i=0;$i<$count;$i++){
                
self::del($names[$i]);
            }
//for()
        
}
    } 
un modo sencillo de utilizar esta clase

Código PHP:
include_onde('class.cookie.php');

Cookie::set('var1','hola mundo!',60); //crear cookie de nombre var1 con valor "hola mundo" y que dure un minuto
echo Cookie::get('var1'); //imprime el valor de la cookie var1
Cookie::set('copiaVar1',Cookie::get('var1'));//copiar var1 a una nueva cookie llamada copiavar1
if(Cookie::exists('copiaVar1')) {echo "existe la cookie";}//comprueba si existe la cookie
if(!Cookie::isEmpty('copiaVar1')) {echo "la cookie no esta vacia";}//comprueba si no esta vacia la cookie
Cookie::delAll(); //borra todas las cookies 
se aceptan comentarios o sugerencias

0.2.1 se agrego "static" a los metodos
__________________
Degiovanni Emilio
developtus.com
mi neurona

Última edición por emiliodeg; 11-abr-2008 a las 14:26.
emiliodeg está desconectado   Responder Citando
Antiguo 11-abr-2008, 13:11   #2 (permalink)
zsamer tiene algunos puntos positivos de karma
 
Fecha de Ingreso: noviembre-2003
Mensajes: 750
Re: Colaboración: Clase Cookie

tus metodos son tratados como estaticos, entonces deberían ser estaticos:

Código PHP:
class Cookie{
        public static function 
set($cookieName,$value='',$time=3600,$path=null,$domain=null,$httpOnly=false){
            
setcookie($cookieName,$value,time()+(int)$time,$path,$domain,(bool)$httpOnly);
            
$_COOKIE[$cookieName]=$value;
        }
        public static function 
get($cookieName,$defaultValue=''){
            return 
self::exists($_COOKIE[$cookieName])?$_COOKIE[$cookieName]:$defaultValue?$defaultValue:false;
        }
        public static function 
del($cookieName,$value='',$time=-3600,$path=null,$domain=null,$httpOnly=false){
            
self::set($cookieName,$value,$time,$path,$domain,$httpOnly);
            unset(
$_COOKIE[$cookieName]);
        }
        public static function 
exists($cookieName){
            return isset(
$_COOKIE[$cookieName]);
        }
        public static function 
isEmpty($cookieName){
            return empty(
$_COOKIE[$cookieName]);
        }
        public static function 
delAll(){
            
$count=count($_COOKIE);
            
$names=array_keys($_COOKIE);
            for(
$i=0;$i<$count;$i++){
                
self::del($names[$i]);
            }
//for()
        
}
    } 
zsamer está desconectado   Responder Citando
Antiguo 11-abr-2008, 14:27   #3 (permalink)
emiliodeg está en el buen camino
 
Avatar de emiliodeg
 
Fecha de Ingreso: septiembre-2005
Mensajes: 744
Re: Colaboración: Clase Cookie

gracias por la colaboración, se me habia apsado por alto
__________________
Degiovanni Emilio
developtus.com
mi neurona
emiliodeg está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 09:10.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93