Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/04/2010, 10:46
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Parámetros por defecto dentro de clases

No, lo que pasa es que las variables que puedes pasar como parámetros por defecto, deben de ser del tipo nativo de PHP, es decir strings, ints, floats, etc.

No puedes definir un tipo complejo (en este caso una clase) como valor por defecto de una función (esto aplica uses OOP o no).

Por ejemplo usando variables simples y complejas:
Código PHP:
Ver original
  1. class foo {
  2.          private $_default = "default";
  3.  
  4.          public function baz($bar, $foo=null, $baz='hello')
  5.          {
  6.                 if ($foo == null) {
  7.                      $foo = $this->_default;
  8.                 }
  9.  
  10.                 //...
  11.          }
  12. }

Es como si quisieras hacer esto:
Código PHP:
Ver original
  1. function foo($link = mysql_connect('root')) {
  2.  
  3. }

Esperando que si no le pasas $link, se hiciera uno por defecto.

Saludos.