Som mange programmeringsspråk , inneholder PHP innebygd funksjonalitet for å gi variasjon til hvordan funksjonene er definert og kalt. PHP programmerere kan definere små , anonyme funksjoner i koden for å gjøre den mer lesbar og effektiv, som de kan i andre programmeringsspråk som Python . For å forstå hvordan anonyme funksjonene fungerer i PHP, er det viktig å forstå hvordan PHP håndterer funksjoner , og hvor anonyme funksjonene fungerer generelt. Funksjoner i PHP
Tradisjonelt , en funksjon - i alle programmeringsspråk - betegner bare en blokk med kode som utfører visse oppgaver . Programmereren definerer denne blokken med kode med et navn , og da kan hun bruke den koden gjennom hele programmet ved å kalle navnet på den funksjonen. Følgende eksempel illustrerer en PHP -funksjon med ett argument . Et argument fungerer som inngang med som en funksjon fungerer , hvis det er behov for dette
funksjon timesTwo ( $ x )
{
echo $ x * 2; .
}
funksjoner og variabler i PHP
grunn av naturen av PHP tolk , kan programmerere bruke variabler til å kalle funksjoner. En PHP-programmerer oppnår dette ved å opprette en variabel som inneholder en streng - et ord - som representerer navnet på en eksisterende funksjon . Programmereren kan legge den variabelen med åpne og lukkede parenteser , sammen med eventuelle argumenter som kreves av funksjon . PHP-tolken vil da kaller funksjonen navnet matchende variabelen streng. Følgende eksempel illustrerer hvordan dette fungerer i praksis :
funksjon funk ( $ arg) {
echo " $ arg ";
}
$ f = " funk ";
f ( "Hei ! "); //kaller " funk ( )" og skriver "Hei!"
Anonym Funksjoner
Vanligvis er en anonym funksjon en funksjon uten et navn. Disse funksjonene finnes " in -line" med den eksisterende kode . Dette betyr at programmet ikke har en definert navn eller en referanse for funksjonen , slik det er angitt på stedet. Et eksempel på en anonym funksjon i praksis er " lambda " funksjonen fra Python. Eksempelet nedenfor viser hvordan en Python programmerer oppretter en funksjon uten å navngi det : en
>>> ( lambda x : x * 2 ) ( 3 ) //den " lambda "-funksjonen finnes bare på denne linjen , og har ikke noe navn
6
PHP og Anonyme funksjoner
PHP programmeringsspråk har ikke " lambda " søkeord bygget inn syntaks sin , men det tillater programmerere å lage anonyme funksjoner. Programmerere kan være lurt å bruke dem når funksjonen i spørsmålet er ikke komplisert eller viktig nok til å bruke tid eller plass å definere det. PHP programmerere kan tilordne en funksjon referanse til en variabel . Den funksjonen kan være " anonym ", snarere enn definert på forhånd. Dette ligner på å kalle en funksjon fra en variabel , men uten å nevne funksjonen. Følgende eksempel illustrerer hvordan en anonym funksjon er tildelt en variabel , og heter:
$ f = funksjon ( $ arg) {
echo " $ arg ";
}
f ( " Hi "); //utskrifter "Hei "