Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/03/2016, 15:15
quico5
 
Fecha de Ingreso: enero-2008
Mensajes: 581
Antigüedad: 17 años, 2 meses
Puntos: 9
No entiendo bien __desctruct

Estoy en la guía (http://php.net/manual/es/language.oop5.decon.php)

No se si lo entiendo, pero supongo que un destructor no destruye nada directamente, supongo que es algo que se aplica después de llamar un método en una clase

supongo que si llamo MyClase::MiMetodo primero se aplicaría el constructor, después el método llamado y después el destructor

Código PHP:
class MyDestructableClass {
   function 
__construct() {
       print 
"En el constructor\n";
       
$this->name "MyDestructableClass";
   }

   function 
__destruct() {
       print 
"Destruyendo " $this->name "\n";
   }
}


$obj = new MyDestructableClass(); 

Código PHP:
class Negrita {
   function 
__construct() {
       print(
'<b>');
   }

   static function 
Negrita($txt){
           print(
$txt);
   }

   function 
__destruct() {
       print(
'</b>');
   }
}

$obj = new Negrita();
$obj->Negrita('Negrito');

Negrita::Negrita('Negrita'); 
¿Porque me devuelve las dos palabras así?
Código:
<b>NegritoNegrita</b>
En vez de así:
Código:
<b>Negrito</b><b>Negrita</b>

He intentado cambiar esto:
Código PHP:
        static function Negrita($txt){
            print 
$txt;
        } 
Por esto:
Código PHP:
        static function Negrita($txt){
            return 
$this->getvalor($txt);
        }
        public function 
getValor($txt){
            print 
$txt;
        } 

Última edición por quico5; 10/03/2016 a las 16:58