Functii

postat acum 2 ani de Stefanescu Mihai in categorie PHP

Functiile, in PHP, sunt asemanatoare cu functiile in alte limbaje de programare. O functie este o portiune de cod, ce accepta unul sau mai multi parametri, proceseaza informatiile date si mai apoi returneaza o valoare.

Am folosit functii chiar si in lectia anterioara (lectia despre fisiere), am folosit functii precum fopen() si fread(). Acestea sunt functii deja scrise, dar PHP ne da posibilitate sa ne scriemsinguri functii.

De fapt, va trebuii sa scrieti propriile functii doar in cazuri foarte specifice pentru PHP deja are o librarie cu peste 1000 de functii si nu trebuie decat sa le apelati.

Crearea unei functii

Este foarte usor sa cream propria noastra functie. Mai jos am sa scriu o  functie care nu face altceva decat sa printeze un mesaj pe ecran atunci cand este apelata.

Atentie: Atunci cand cream o functie folosim cuvantul cheie function si codul acesteia este pus intre acolade ( {si } ).

/* Definire Functie */
function scrieMesaj(){
  echo "Prima mea functie scrisa in PHP!";
}
/* Apelsare Functie */
scrieMesaj();

Functii cu parametri

PHP ne da posibilitatea de a pasa parametri functiei noastre. Puteti pasa unu, doi sau mai multi parametri. In interiorul functiei, acesti parametri functioneaza ca niste variabile.

function adunare($num1, $num2)
{
  $suma = $num1 + $num2;
  echo "Suma este:".$suma;
}
adunare(10, 20);

Paseara argumentelor prin referinta

Este posibil sa pasam argumente prin referinta. Asta inseamna ca valoarea originala a variabilei este manipulata de functie si nu e o copie a acesteia.Mai jos avem doua exemple cum putem face asta:

function plusCinci($num){
   $num += 5;
}

function plusSase(&$num){
   $num += 6;
}
$original = 10;
plusCinci( &$original );
echo "Valoarea originala este $original<br />";
plusSase( $original );
echo "Valoarea originala este $original<br />";

Rrezultatul va fi:

Valoarea originala este 15
Valoarea originala este 21

Returnarea de valori

O functie poate returna o valoare prin intermediul cuvantului cheie return. Acesta opreste executia functiei si returneaza o anumita valoare in locul in care a fost apelata.

Functiile pot returna mai multe valori folosind sintaxa return array(‘a’, ‘b’, ‘c’).

function adunare($num1, $num2){
  $suma = $num1 + $num2;
  return $suma;
}
$valoare_return = adunare(10, 20);
echo "Suma este: $valoare_return";

Setarea de valori default pentru parametrii

Puteti seta valorilor default pentru parametrii functiei astfel incat atunci cand este apelata fara parametrii sa ii folosesasca pe cei default.

function printareText($param = NULL)
{
   print $param;
}
printareText("Asta e un test");
printareText();

Acest cod va scrie decat “Asta e un test” pe ecran, pentru ca a doua oara cand este apelata nu mai are nici-un argument, deci este preluat cel default, adica NULL.

 Apelarea dinamica a functiilor

Este posibil sa apelam dinamic o functie dand-ui unei variabile drept varloare numele acelei functii (sub forma de sir de caractere) si apoi apeland variabila ca pe o functie.

function salut(){
   echo "Salut<br />";
}
$variabila = "salut";
$variabila();

 

Sunt un tanar programator din Bucuresti ce lucreaza in PHP/Mysql (MySqli/PDO), Laravel, CodeIgniter, MySQL, PostgreSQL, Wordpress, HTML5/CSS3, Sass, Photoshop si multe altele.
Google+ Community Facebook Group
Acest articol a fost mutat de pe vechea platforma.
Pentru orice eroare aparuta la mutare va rog sa ma contactati!