Você está aqui: Home / programacao / php / constantes no php constantes em classes dissecando php.html

Constantes no PHP, Constantes em Classes – Dissecando PHP

Quando você vai criar um script e já de antemão lhe é informado valores que serão fixos e que serão utilizados em seu script, armazenar esses valores em constantes é uma boa idéia. As constantes diferem das variáveis porque, como o nome diz, são constantes, ou seja, não podem ser alteradas depois da declaração, já as variáveis podem variar de valor conforme o script necessite, com isso, trabalhar com constantes é muito seguro e evita o programador cometer equívocos como alterar um valor que não deveria ser alterado durante a programação.

Vejamos algumas formas de se declarar Constantes e pegar os valores delas no PHP:

Declarando e definindo constantes no php com define:

function echo_br($x){
	echo $x . "<br>";
}

define("PRETO","000",true);
define("BRANCO","fff");

echo_br(PRETO);
echo_br(BRANCO);

Aí à cima, a função echo_br é apenas auxiliar e vai inserir uma quebra de linha após imprimir a constante, mas não dê atenção para essa função, o foco importante são as declarações utilizando define. Define possui três parâmetros, o primeiro e o nome da constante, o segundo é o valor – arrays e objetos não são aceitos -, e o terceiro é opcional e trata-se de um valor booleano (true ou false), esse terceiro parâmetro define se a constante irá diferenciar minúsculas de maiúsculas quando chamada, o valor padrão é true. Aqui também é importante salientar que convém-se utilizar um nome todo em caixa alta para constantes, isso vai facilitar a compreenção do código por outro programador e mesmo pra você.

Declarando e definindo constantes no php com const:
Além do define você pode definir constantes no php utilizando o const, o const trabalha como uma declaração de tipo que você coloca antes do nome da constante, veja o código como fica na prática:

const BLACK = "000";
const WHITE = "fff";

echo_br(BLACK);
echo_br(WHITE);

Declarando e definindo constantes no php dentro de Funções:
Para definir constantes dentro de funções você deve utilizar o define, veja como fica:

function cores(){
	define("AMARELO","YELLOW");
	echo_br(AMARELO);
}

cores();

Note que a constante não fica restrita para a função, e uma vez declarada não poderá ser declarada novamente porque isso vai gerar um erro. Nesse caso, essa função do jeito que está aí só poderá ser chamada uma única vez. Declarar constantes dentro de funções, salvo em casos específicos, pode ser um desserviço, portanto só utilize esse recurso se souber bem o que está fazendo.

Declarando e definindo constantes no php dentro de Classes:
Para declarar constantes dentro de classes você deve utilizar o const, veja como fica na prática:

class Cores{
	const AZUL = "BLUE";

	public function get_azul(){
		return self::AZUL;
	}

}

Acessando o valor de Constantes no php:

Veja como acessar o valor da constante AZUL sem instanciar a classe em um objeto:

echo_br(Cores::AZUL);
echo_br(Cores::get_azul());

Veja agora como acessar o valor da constante AZUL através de um objeto instanciado:

$cores = new Cores();
echo_br($cores->get_azul());

Veja como acessar o valor de uma constante com um nome desconhecido de antemão:

$azul = "AZUL";
echo_br(constant("Cores::". $azul));

Veja como acessar o valor de uma constante quando o nome da classe é desconhecida de antemão:

$cores_class = "Cores";
echo_br($cores_class::AZUL);

Como saber se uma constante já foi declarada (definida) no php:
O php possui uma função para conferir se uma constante já foi definida, é a função defined(), essa função irá retornar true em caso positivo e false em caso negativo, veja como fica na prática:

const AZUL = "BLUE";
if(defined("AZUL")) echo AZUL;

E para verificar se uma constante existe dentro de uma classe você pode fazer da seguinte forma:

if(defined("Cores::AZUL")) echo "AZUL possui valor= " . Cores::AZUL;

Nesse artigo dissecamos as características de constantes, algumas funções que o php possui para trabalhar com constantes, como trabalhar com constantes dentro de objetos e como acessar valores de constantes, bem como saber se uma constate já foi declarada, espero que este post seja útil pra vocês.

Take Care!

Gostou? Compartilhe!
        

    One Response to Constantes no PHP, Constantes em Classes – Dissecando PHP

    Página 1 de 11
    • Simples e objetivo, muito bom!

      06/12Responder
      Kelvin
    Página 1 de 11

    Deixe um Comentário

    O seu endereço de email não será publicado Campos obrigatórios são marcados *

    *

    Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

    Receba Novidades no Email

    Artigos Populares do Mês