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!


Ofertas Mercado Livre
Celular Mp20 F035 Com Gps Gratis Wi Fi Tv 2 Chips 2gb Brinde
Celular Mp20 F035 Com Gps Gratis Wi Fi Tv 2 Chips 2gb Brinde
Mais info»
R$ 348.98
até 18x de 26.17
Mini Mp10 Mp12 Java Msn Tv 2gb Desbloqueado 2 Chips Capa Nf
Mini Mp10 Mp12 Java Msn Tv 2gb Desbloqueado 2 Chips Capa Nf
Mais info»
R$ 198.00
até 18x de 14.85
Celular Mp15 Quadriband Vaic A1900 Tv Camera 2 Chips Jogos
Celular Mp15 Quadriband Vaic A1900 Tv Camera 2 Chips Jogos
Mais info»
R$ 196.99
até 18x de 14.77
Mini Hiphone Mp12 Celular 2chips   Tv   Caneta   Capa   2gb
Mini Hiphone Mp12 Celular 2chips Tv Caneta Capa 2gb
Mais info»
R$ 179.90
até 18x de 13.49
Mp Tudo Celular Mini Hiphone  Tv  Java   2gb Frete Grátis
Mp Tudo Celular Mini Hiphone Tv Java 2gb Frete Grátis
Mais info»
R$ 199.00
até 18x de 14.93
Celular Mp20 C5000 Wi Fi Java Flash 2 Chips Msn Touch Fm Tv
Celular Mp20 C5000 Wi Fi Java Flash 2 Chips Msn Touch Fm Tv
Mais info»
R$ 269.00
até 18x de 20.18
Vitrine Profissionais Web  
Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Add to favorites
  • Linkter
  • MyShare
  • PDF
  • Reddit
  • RSS
  • StumbleUpon
  • Tumblr
  • Twitter
  • Yahoo! Bookmarks
This entry was posted in PHP and tagged , , , , , , , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.
  • Ganhar Dinheiro Online
  • Receba DINHEIRO DIARIAMENTE na Conta BANCÁRIA

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

    • Receba Novidades no Email:

    • Digite seu Email: