Home » Articole » Articole » Calculatoare » Dezvoltarea web » WordPress » Funcții PHP definite de utilizator

Funcții PHP definite de utilizator

postat în: PHP, WordPress 0

O funcție poate fi definită folosind o sintaxă precum următoarea:

Exemplul #1 Pseudocod pentru a demonstra utilizările funcțiilor

Exemplul #1 Pseudocod pentru a demonstra utilizările funcțiilor


<?php
function foo($arg_1, $arg_2, /* ..., */ $arg_n)
{
echo "Example function.\n";
return $retval;
}
?>

Orice cod PHP valid poate apărea în interiorul unei funcții, chiar și alte funcții și definiții de clasă.

Numele funcțiilor urmează aceleași reguli ca și alte etichete în PHP. Un nume valid de funcție începe cu o literă sau liniuță de subliniere, urmată de orice număr de litere, cifre sau liniuțe de subliniere. Ca expresie regulată, ar fi exprimată astfel:
^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$
.

Sfat: Consultați și Ghidul de denumire a zonei utilizatorului.

Funcțiile nu trebuie definite înainte de a fi referite, cu excepția cazului în care o funcție este definită condiționat, așa cum se arată în cele două exemple de mai jos.

Când o funcție este definită într-o manieră condiționată, cum ar fi cele două exemple prezentate. Definiția sa trebuie procesată înainte de a fi apelată.

Exemplul #2 Funcții condiționate


<?php

$makefoo = true;

/* Nu putem a
apela foo() de aici
deoarece nu există încă,
dar putem apela bar() */

bar();

if ($makefoo) {
function foo()
{
echo "I don't exist until program execution reaches me.\n";
}
}

/* Acum putem a apela în
siguranță foo()
deoarece $makefoo a fost evaluat la adevărat */

if ($makefoo) foo();

function bar()
{
echo "I exist immediately upon program start.\n";
}

?>

Exemplul #3 Funcții în cadrul funcțiilor


<?php
function foo()
{
function bar()
{
echo "I don't exist until foo() is called.\n";
}
}

/*  Nu putem a apela bar() încă
deoarece nu există. */

foo();

/* Acum putem apela bar(),
Procesarea lui foo()
a făcut acest lucru accesibil. */

bar();

?>

Toate funcțiile și clasele din PHP au sfera globală – pot fi apelate în afara unei funcții chiar dacă au fost definite în interior și invers.

PHP nu acceptă supraîncărcarea funcțiilor și nici nu este posibilă nedefinirea sau redefinirea funcțiilor declarate anterior.

Notă: Numele de funcții nu țin cont de majuscule și minuscule pentru caracterele ASCII de la A la Z, deși de obicei este o formă bună de a apela funcții așa cum apar în declarația lor.

Atât numărul variabil de argumente, cât și argumentele implicite sunt acceptate în funcții. Consultați și referințele de funcție pentru func_num_args(), func_get_arg() și func_get_args() pentru mai multe informații.

Este posibil să apelați funcții recursive în PHP.

Exemplul #4 Funcții recursive


<?php
function recursion($a)
{
if ($a < 20) {
echo "$a\n";
recursion($a + 1);
}
}
?>

Notă: Apelurile recursive de funcții/metode cu peste 100-200 de niveluri de recursivitate pot distruge stiva și pot provoca o terminare a scriptului curent. În special, recursiunea infinită este considerată o eroare de programare.

Sursa: PHP Manual, licența CC BY 3.0. Traducere și adaptare: Nicolae Sfetcu

Lucrul cu baze de date
Lucrul cu baze de date

Colecția ȘTIINȚA INFORMAȚIEI Lucrul cu bazele de date este astăzi printre cele mai căutate abilități IT. Acum puteți obține o bază de plecare în proiectarea și implementarea bazelor de date cu o abordare practică, ușor de înțeles. ”Lucrul cu baze … Citeşte mai mult

Nu a fost votat 17.98 lei36.01 lei Selectează opțiunile
Analitica rețelelor sociale
Analitica rețelelor sociale

DOI: 10.58679/TW12414 Analitica rețelelor sociale este un domeniu nou și emergent, pregătit pentru a permite companiilor să își îmbunătățească inițiativele de gestionare a performanței în diferite funcții de afaceri. Indiferent dacă este vorba de măsurarea eficienței campaniilor promoționale, colectarea de … Citeşte mai mult

Nu a fost votat 17.98 lei43.31 lei Selectează opțiunile
Big Data
Big Data

Odată cu creșterea volumului de date pe Internet, în media socială, cloud computing, dispozitive mobile și date guvernamentale, Big Data devine în același timp o amenințare și o oportunitate în ceea ce privește gestionarea și utilizarea acestor date, menținând în … Citeşte mai mult

Nu a fost votat 13.47 lei31.50 lei Selectează opțiunile

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *