Tutoriál PHP #3: Ako nadefinovať premennú a konštantu v prostredí php

Využívanie premenných a konštánt v prostredí PHP

V tretej časti seriálu o PHP sa budeme venovať práci s lokálnymi a globálnymi premennými a vyskúšame si používanie konštanty.
V PHP sa definovanie premennej začína znakom dolár ($). Premennú si ale nemôžeme pomenovať ako chceme. Sú tu určité obmedzenia. názov premennej nesmie obsahovať špeciálne znaky, ako sú dolár $, ampressand &. Ďalším obmedzením je, že názov premennej sa nesmie začínať číslom.

Príklad na definovanie premennej a jej následné využitie vo výpise na obrazovke:

<?php
$premenna = 164;
echo "<p> toto je hodnota z premennej $premenna </p>";
?>

Rozsah platnosti premenných:
Priestor, v ktorej premenná platí, t.j. dá sa používať, závisí od toho, kde ju prvýkrát nadefinujeme. Ak máme funkciu a premenná sa nachádza vo vnútri funkcii, hovoríme, že je to lokálna premenná a jej platnosť je len v rámci danej funkcie, v ktorej bola nadefinovaná. Typickým príkladom je odkazovanie sa na údaje uložené v externom súbore, napr. údaje potrebné k prihláseniu sa na server a pod.:

<?php
// externý súbor pristupove_udaje.php
$pristupove_udaje = array (user=>"haluz", pass=>"skola" , hosting=>"localhost");

//použitie údajov z externého súboru pristupove_udaje.php:

// súbor  pripojenie.php
require_once "pristupove_udaje.php";
function pripojMySQL() {
	 
	    global $pristupove_udaje;
		mysql_connect($pristupove_udaje["hosting"], 
		              $pristupove_udaje["user"], 
					  $pristupove_udaje["pass"]);
		}

pripojMySQL();
?>

V tejto časti kódu upozorňujem na riadok 11, v ktorom je definovaná globálna premenná. Aj napriek tomu, že je definovaná vo vnútri funkcie pripojMySQL( ), jej platnosť je v ľubovoľnom mieste dokumentu, teda aj mimo funkcie.
Konštanta
Konštanta, na rozdiel od premennej, obsahuje hodnotu, ktorá sa počas behu programu nemení. Pri jej definovaní sa však nepoužíva znak dolára ($), ako je to pri premennej. Aby boli konštanty v kóde viditeľné, zaužívalo sa pravidlo, že sa definujú pomocou veľkých písmen. Konštantu definujeme pomocou funkcie define. Hodnota konštanty môže byť typu String, Integer, Float alebo Boolean. Na rozdiel do premenných sú konštanty dostupné na globálnej úrovni. V prípade, že sa pokúsime zavolať konštantu , ktorá nebola nadefinovaná, PHP vyhlási chybu (E_NOTICE). Ide o reťazec String, ktorý sa následne použije ako hodnota volanej konštanty, ktorú sme vlastne nenadefinovali. Príklad definície a následnej aplikácie konštanty:

<?php
define("MOJA_KONSTANTA","jahoda");

echo "Dnes na obed mi do polievky spadla" . moja_konstanta;
// vypíše:  Dnes na obed mi do polievky spadla moja_konstanta

echo "Dnes na obed mi do polievky spadla" . MOJA_KONSTANTA;
// vypíše:  Dnes na obed mi do polievky spadla jahoda
?>

V riadku 2 sme nadefinovali konštantu s názvom MOJA_KONSTANTA. Do tejto konštanty sme uložili reťazec jahoda. V riadku 4 vo výpise voláme konštantu moja_konstanta. Názov sme pozmenili na malé písmená, t.j. voláme konštantu, ktorá nie je nadefinovaná. Vo výpise sa použije ako hodnota konštanty práve tento reťazec - moja_konstanta. V riadku 7 vo výpise voláme konštantu tak ako sme ju nadefinovali, vypíše sa jej obsah - reťazec jahoda.

Rubriky: