Arquivo da Categoria ‘PHP’

Metodos estáticos e propriedades no PHP POO

Monday, 29 de June de 2009

O uso da keyword static permite que os membros das classes (métodos e propriedades) serem usados sem necessidade de instanciamento (fazer um objeto da classe).  Exemplo de uso: public static myClass {…
Porque não há objeto criado quando se chama o static, o this-> não são disponíveis no caso. O static pertence a classe e não ao objeto. Para acessar o static dentro da própria classe usa-se self com :: , veja um exemplo:

 

<?php

class counter {

/* variável contador */

private static $count = 0;

 

/* Construtor */

function __construct() {

  self::$count++;

}

 

/* Mostra o count atual */

public static function getCount() {

 return self::$count;

}

} /* A class termina aqui */

 

/* cria uma nova instancia */

$count = new counter();

 

/* revela o count */

echo counter::getCount() . ‘<br />’;

 

/* cria outra instancia */

$next = new counter();

 

/* revela o count */

echo counter::getCount().’<br />’;

 

/* um terceiro instanciamento */

$third = new counter;

echo counter::getCount().’<br />’;

?>

 

A cada novo instanciamento o construtor incrementa 1 (um) à variável static count.