Funcții PHP

P

Funcțiile cresc atât lizibilitatea, cât și reutilizarea codului. Fără a utiliza funcții, are loc o mulțime de repetare a codului. În acest tutorial, veți afla tot ce trebuie să știți despre funcțiile PHP.

Ce este o funcție și cum se declară o funcție în PHP?

Funcțiile PHP sunt puterea sa reală. Există două categorii de funcții în PHP.

  1. Funcții încorporate: PHP oferă peste 1000 de funcții încorporate. Cu toate acestea, aceste funcții sunt gata de utilizare. Trebuie doar să-i spui pe nume. Puteți trece prin funcțiile încorporate PHP aici.
  2. Funcții personalizate: vă puteți defini propriile funcții și le puteți apela oriunde în cod. În acest articol, vom vorbi despre funcțiile personalizate. Funcții personalizate numite și funcții definite de utilizator.

Funcții definite de utilizator în PHP

În această secțiune, vom învăța cum să ne declarăm și să ne definim propriile funcții în PHP. Înainte de a explora în el, să cunoaștem câteva fapte cheie despre funcțiile PHP.

  • O funcție este un bloc de instrucțiuni. Poate fi folosit în mod repetat oriunde în cod.
  • Când pagina web se reîncarcă, funcțiile php nu sunt apelate automat.
  • Se execută atunci când este apelat oriunde.

Cum se declară o funcție definită de utilizator în PHP?

Pentru a declara o funcție PHP personalizată, utilizați următoarea sintaxă generală.

<?php
function functionName() {
  code block related to this function;
}
?>

De exemplu

<?php
function myFunc() {
  echo "Hello world!";
}
myFunc(); // call tge function
?>

Explicația exemplului

  • În exemplul de mai sus, funcția este declarată folosind cuvântul cheie function. După aceea, parantezele rotunde function() indică începutul funcției.
  • Blocul de cod al funcției începe cu { și se termină cu }.
  • Declarația return este necesară în funcție, în caz contrar, se aruncă o eroare.

Argumente funcționale

Parametrii din parantezele rotunde ale funcției se numesc argumente ale funcției. Argumentele funcțiilor pot fi simple sau multiple. Argumentele multiple ale funcției sunt separate prin virgule.

Notă: Numele funcțiilor nu țin cont de majuscule și minuscule. De exemplu, funcția abc() și funcția ABC() sunt diferite.

Argumentele funcției sunt la fel ca variabilele. Argumentele sunt date între parantezele rotunde ale funcției. Pot exista unul sau mai multe argumente, separate prin virgulă. Aceste argumente pot fi accesate și modificate în interiorul funcției.

Exemplu de funcție cu un singur argument

<?php
function familyName($fname) {
  echo "$fname Refsnes.<br>";
}

familyName("Jani");
familyName("Hege");
familyName("Stale");
familyName("Kai Jim");
familyName("Borge");
?>

În exemplul de mai sus, primește un argument și îl concatenează cu șirul. Apoi această funcție este apelată de cinci ori, cu valori diferite ale argumentului. Veți vedea că funcția va imprima valoarea argumentului împreună cu șirul.

Exemplu de funcție cu două argumente

<?php
function familyName($fname, $year) {
  echo "$fname Refsnes. Born in $year <br>";
}

familyName("Hege", "1975");
familyName("Stale", "1978");
familyName("Kai Jim", "1983");
?>

În exemplul de mai sus, funcția primește două argumente, separate prin virgulă. Metoda de apelare este aceeași cu cea descrisă în exemplul de mai sus. Cu toate acestea, trebuie să transmitem două valori funcției în timp ce o apelăm.

Ce se întâmplă dacă treceți argumente insuficiente unei funcții?

<?php declare(strict_types=1); // strict requirement
function setHeight(int $minheight = 50) {
  echo "The height is : $minheight <br>";
}

setHeight(350);
setHeight(); // will use the default value of 50
setHeight(135);
setHeight(80);
?>

Dacă încercați să apelați o funcție cu argumente insuficiente, va da o eroare. Cu toate acestea, există întotdeauna o modalitate de a evita acest lucru. Este descris mai jos.

Cum se utilizează valoarea implicită în argumentul funcțiilor – PHP

O funcție poate atribui o valoare implicită argumentului. Permite apelarea funcției fără a trece acel argument. Este prezentat mai jos,

În exemplul de mai sus, am apelat funcția fără al doilea parametru. Valoarea celui de-al doilea argument va fi luată din valoarea implicită, care este 50.

Trecerea argumentului funcțiilor PHP prin referință

În secțiunea de mai sus, am învățat despre trecerea variabilelor prin referință. Dacă o variabilă este utilizată fără referință, nu veți putea modifica valoarea în interiorul funcției. Pentru că, în acest caz, sistemul de operare creează două copii ale argumentului. Schimbarea valorii argumentului în interiorul funcției pentru a schimba o singură copie. Pe de altă parte. dacă o variabilă este transmisă prin referință (folosind & semn), aceasta nu creează mai multe copii. Deci, modificarea valorii din interiorul funcțiilor va schimba valoarea argumentului original.

Revenirea de la funcțiile PHP

Instrucțiunea Return oprește execuția funcției și returnează valoarea.

De exemplu

<?php declare(strict_types=1); // strict requirement
function sum(int $x, int $y) {
  $z = $x + $y;
  return $z;
}

echo "5 + 10 = " . sum(5, 10) . "<br>";
echo "7 + 13 = " . sum(7, 13) . "<br>";
echo "2 + 4 = " . sum(2, 4);
?>

În exemplul de mai sus, există două argumente pentru această funcție. Sunt de tip întreg. Suma lor este returnată. Funcția este apelată cu valori diferite ale argumentelor în care se observă valoarea returnată.

Tipul funcției și valoarea returnată trebuie să fie de același tip. De exemplu.

<?php 
declare(strict_types=1); // strict requirement
function addNumbers(float $a, float $b) : float {
  return $a + $b;
}
echo addNumbers(1.2, 5.2);
?>

declare(strict_types=1) în php

În PHP, scrieți linia de mai sus în partea de sus a fișierului PHP. Face ca tipul de argumente ale funcției să urmeze cu strictețe. Ajută la evitarea oricăror declarații nevalide, cum ar fi suma unui număr și un număr de șir. De exemplu.

<?php
function addNumbers(int $a, int $b) {
  return $a + $b;
}
echo addNumbers(5, "5 days");
// since strict is NOT enabled "5 days" is changed to int(5), and it will return 10
?>

Pentru referință oficială PHP 8 la funcții, faceți clic aici.

Acum că știți elementele de bază ale funcțiilor, vom discuta în continuare Arrays.

Adaugă comentariu

Rețeaua de tutori

Învață PHP de la A la Z