Normal Argument List i PHP PHP Funksjonsargumenter - Del 1 Innledning Dette er del 1 av min serie, PHP funksjonsargumenter. Et argument liste er bare en liste av argumentene for en funksjon. Du kan fortsatt kalle det parameterlisten. I denne delen av serien ser vi på vanlig argument liste med en funksjon. Du trenger grunnleggende kunnskaper i PHP for å forstå denne serien. Hvis du ikke har den forutsetning kunnskap, så les den serien jeg skrev i denne bloggen som første del er tittelen, Komme i gang med PHP.
For å nå den serien, bare skriv tittelen og navnet mitt Chrys i søkeboksen på denne siden og klikk Søk. Merk: Hvis du ikke kan se koden, eller hvis du tror noe mangler (ødelagt kobling, bilde fraværende), bare kontakte meg på [email protected]. Det er, kontakt meg for den minste problemet du har om hva du leser. Eksempel I følgende funksjon, er det to argumenter i argumentlisten: function myFn ($ var0, $ var1) {echo $ var0. "Echo $ var1." } MyFn (25, 'man'); ?> Passing Argument via referanse Når du passerer en referanse til en funksjon, har parameter til funksjonen for å være en referanse.
Følgende program illustrerer dette: function moro (& $ var) {$ var = 77; echo $ var "} $ var0 = 66; moro ($ var0);. echo $ var0". ?> I ovennevnte program parameteren er en referanse, som er & $ var. Nå er den variable, $ var ikke er definert andre steder utenfor funksjonen. Det ser ut som en funksjon parameter, og den blir brukt inne i funksjon. Ned i programmet, 66 er tilordnet det vanlige variable, $ var0. Den siste-but-en-setningen i programmet, kaller funksjonen. Argumentet i funksjonskall er $ var0.
Så snart funksjon begynner å utføre, den variable er festet til og for å danne den parameter refererer til den samme region i minnet som den variable sendt som argument. I det ovennevnte program funksjonsdefinisjon modifiserer verdien og reflekterer det, med den variable, $ var. Den siste setningen i programmet gjenspeiler også den modifiserte verdi, men denne gangen med vanlig variabel, $ var0. Anta at du har en variabel utenfor en funksjon. Hvis du passerer denne variabelen med henvisning til en funksjon, funksjonen variabel og dette vil referere til samme verdi (region) i minnet.
Enhver endring i funksjonen variabel inne i funksjonen, vil automatisk være den samme endringen gjort til variabelen utenfor funksjonen. Så for å passere en referanse til en funksjon, få en referanseparameteren med en variabel som ikke tidligere er blitt erklært; å kalle den funksjonen du sende en variabel som har blitt erklært utenfor funksjonen, som argument. I gjennomføringen av funksjon, vil de to variablene refererer til samme region i minnet, og verdien i regionen kan bli endret med enten variabel. En Array som argument i følgende funksjon, er det bare ett argument.
Men dette argumentet en matrise. Det er to elementer i gruppen, slik at du kan likevel si at argumentet listen har indirekte to elementene, $ myArr = array (0 => "one", 1 => "to"); funksjon myFn ($ arr) {global $ myArr; $ arr [0] = "aa"; $ arr [1] = "bb"; $ myArr [1] = $ arr [1]; } MyFn ($ myArr); echo $ myArr [0]. "echo $ myArr [1]." ?> Hvis du passerer en matrise på vanlig måte som i koden ovenfor, så er du passerer en kopi av tabellen. Du ender opp med to matriser: en utenfor funksjon og en inne funksjonen.
Hvis du ønsker noen endringer i den ene inne i funksjon, skal vises i en utenfor funksjonen, deretter lage en kopi av de endringer av oppdraget. I ovennevnte programmet en rekke føres som argument; Dette betyr at en kopi av matrisen er passert. Alle verdiene for kopien matrisen i funksjonen endres. For at endringen i den andre verdien av kopien matrisen skal gjøres i den andre verdien i matrisen utenfor, den siste setningen i funksjon tildeler faktisk den andre verdien av kopien matrisen til den andre verdien i matrisen utsiden. Les og prøv koden ovenfor.
Passerer en Array ved referanse i det følgende programmet, er en rekke sendes som referanse. Denne gang funksjonen matrise, og matrisen utsiden er de samme matrise. Det vil si at rekken variable inne i funksjon og rekken variable utenfor funksjonen henviser til den samme matrise (region) i minnet. Enhver endring i rekken variable inne funksjonen er den samme endringen gjort til array variabel utenfor funksjonen. Les og prøv dette: $ myArr = array (0 => "one", 1 => "to"); funksjon myFn (& $ arr) {$ arr [0] = "aa"; $ arr [1] = "bb"; } MyFn ($ myArr); echo $ myArr [0]. "echo $ myArr [1].
" ?> Standardverdier Standardverdier er verdier som ikke er sendt i løpet av funksjonskall. Funksjonen bør vite og bruke dem. Standardverdier er tildelt i parameterlisten. Følgende program illustrerer dette: function myFn ($ var0, $ var1, $ var2 = 10, $ var3 = 4) {echo "$ var0 og $ var1 har $ var2 bøker og $ var3 penner."; } MyFn ("Jahn", "Mary"); ?>