E-learn.ro
Panou utilizatori
Utilizator Parola
Creeaza cont nou    Recupereaza parola
Login
Newsletter
Introdu adresa ta de email
Inscrie-te
Inchide panoul de utilizatori
Add to Google

Tutoriale PHP

Descarca toolbar

Toolbar E-learn.ro Facebook Twitter

WEB DEVELOPMENT  /  PHP  /  Introducere in PHP (24)

VI. Functii si variabile

20.05.2008
VI. Functii si variabile

In acest tutorial, poti afla o noua metoda de a-ti organiza programul PHP, in care acesta nu este executat liniar, ci modular, prin salturi de la o bucata de cod la alta. Acest tip de programare se bazeaza in mod special pe o structura care poarta numele de "functie" ("function"), care este creata o singura data, dar poate fi executata de mai multe ori.

Total vizualizari: 8426 8426 afisari   |   Comentarii  0   |   Rating   |   (6 voturi)   |   Timp necesar: 20 min 20 min   |   Nivel de cunostiinte necesar: Incepator  Incepator

Sursa:  Zend.com  
Autor:  Vikram Vaswani
Adauga la tutoriale favorit Adauga la tutoriale favorite
Pagina:
« 1234 5 6 »
comenteaza printeaza

Variabile locale si globale
Variabilele declarate in interiorul unei functii sunt denumite variabile locale. Variabilele locale nu sunt recunoscute in exteriorul blocului de cod propriu. Ele exista numai atat timp cat blocul de cod in interiorul caruia au fost declarate este executat. Altfel spus, o variabila este creata la intrarea in blocul sau propriu de cod si este distrusa la iesire.

Cel mai comun bloc de cod in interiorul caruia se declara variabilele locale este functia.

Sa consideram exemplul de mai jos:

<?php 
// defineste o variabila in programul principal 
$today = "Tuesday"; 
// definitia functiei 
function getDay() { 
    // defineste o variabila in interiorul functiei
    $today = "Saturday"; 
    // afiseaza variabila 
    print "In interiorul functiei: $today<br />"; 
} 
// apeleaza functia 
getDay(); 
// afiseaza variabila 
print "In programul principal: $today"; 
?>

La rularea scriptului, mesajul afisat va fi:

In interiorul functiei: Saturday
In programul principal: Tuesday

Variabila $today este declarata de doua ori, o data in programul principal si a doua oara in getDay(). Variabila $today din getDay() nu are nici o legatura cu variabila $today din programul principal si aceasta deoarece fiecare variabila $today este cunoscuta numai codului din acelasi bloc in care a fost declarata.

Daca o variabila locala si una globala au acelasi nume, toate trimiterile la numele acelei variabile din interiorul blocului de cod in care a fost declarata variabila locala se vor referi numai la variabila locala si nu vor avea efect asupra variabilei globale.

Cu alte cuvinte, valoarea atribuita variabilei $today in cadrul functiei este vizibila doar in interiorul acesteia, de unde vine si denumirea de variabila locala.

In plus, variabilele locale nu pot fi accesate din programul principal. De exemplu, scriptul :

<?php 
// definitia functiei 
function getDay() { 
    // defineste variabila in interiorul functiei 
    $today = "Saturday"; 
} 
getDay(); 
print "Astazi este $today"; 
?>

va afisa :

Astazi este

Daca in setarile php.ini de pe serverul tau, error_reporting cuprinde constanta E_NOTICE, exemplul de mai sus va afisa si urmatorul mesaj:

Notice: Undefined variable: today in x1.php on line 10

Pentru a face variabilele locale vizibile in afara functiei, ele pot fi declarate ca variabile globale utilizand cuvantul cheie global. Spre deosebire de variabilele locale, variabilele globale sunt recunoscute de catre toate componentele programului si pot fi folosite de orice fragment de cod. De asemenea, acestea isi pastreaza valoarea in timpul executiei programului.

Iata exemplul de mai sus rescris, de data aceasta declarand $today ca variabila globala:

<?php 
// defineste variabila in programul principal
$today = "Tuesday"; 
// defineste functia 
function getDay() { 
    // declara $today ca variabila globala
    global $today; 
     
    // initializeaza variabila in interiorul 
    functiei 
    $today = "Saturday"; 
    // afiseaza variabila
    print "In interiorul functiei: $today<br />"; 
} 
// afiseaza variabila 
print "In programul principal, inainte de 
rularea functiei: $today <br />"; 
// apeleaza functia 
getDay(); 
// afiseaza variabila 
print "Dupa apelarea functiei: $today"; 
?>

Scriptul va afisa:

In programul principal, inainte de rularea functiei: Tuesday
In interiorul functiei: Saturday
Dupa apelarea functiei: Saturday

Odata ce o variabila a fost declarata ca fiind globala, ea este accesibila atat din interiorul functiei, cat si din programul principal.

In plus, PHP defineste o serie de variabile super-globale, disponibile indiferent de locul in care sunt apelate. Cateva dintre acestea sunt $_SERVER, $_POST si $_GET , ce permit accesarea numelui scriptului ce este executat sau preluarea valorilor dintr-un formular care a fost transmis, chiar si in corpul unei functii.

Pagina:
« 1234 5 6 »
comenteaza printeaza
Alte tutoriale PHP:
Noteaza acest tutorial
Rating tutorial
 
(6 voturi)
Pentru a nota acest tutorial, trebuie sa fii logat!
Posteaza un comentariu
Pentru a posta un comentariu, trebuie sa fii logat!
0 TOP UTILIZATORI* 0 0
Tutoriale scrise de claibornelara
claibornelara Rang utilizator claibornelara - Incepator
4170
Tutoriale scrise de kheops
kheops Rang utilizator kheops - Mediu
4084
Tutoriale scrise de ellarichards
ellarichards Rang utilizator ellarichards - Incepator
4080
Tutoriale scrise de mcuemica
mcuemica Rang utilizator mcuemica - Incepator
4055
Tutoriale scrise de emonclercheap
emonclercheap Rang utilizator emonclercheap - Incepator
3870
* Acest top reprezinta punctajele acumulate in ultimele 30 de zile.
Lightroom Flash Illustrator Python CSS SWF Javascript Action Script Fotografie COREL DRAW Java Photoshop Powerpoint Outlook Ruby on Rails Swift 3D XHTML JSON XML Word HTML Sony Vegas Gimp PSD Bridge Vista Fireworks Excel PHP Verilog AJAX MySQL RoR StyleSheet SEO Dreamweaver
Promovare:
Daca faci parte din comunitatea E-learn.ro si doresti promovarea acesteia, poti accesa pagina de promovare.
Arhiva newsletter:
Daca ai ratat un numar mai vechi, sau vrei sa revezi care au fost noutatile E-learn.ro la un moment dat, poti accesa arhiva de newslettere.
  Copyright © 2008-2013 E-LEARN.ro. Toate drepturile rezervate. Termeni si conditii.
Conceput si realizat de Neokinetics Software