Yn PHP, mae swyddogaeth yn floc o god y gellir ei ailddefnyddio sawl gwaith trwy gydol rhaglen. Diffinnir swyddogaethau gan y defnyddiwr a gallant dderbyn mewnbwn (ar ffurf paramedrau) ac allbwn dychwelyd (ar ffurf gwerth dychwelyd).
Diffinnir swyddogaethau gan ddefnyddio'r function
allweddair, ac yna enw'r swyddogaeth ac a gosod o gromfachau a all gynnwys paramedrau. Mae'r bloc cod sy'n rhan o'r swyddogaeth wedi'i amgáu o fewn braces cyrliog.
Dyma enghraifft o swyddogaeth syml yn PHP sy'n cymryd dau rif fel mewnbwn ac yn dychwelyd y swm:
function addNumbers($num1, $num2) {
$sum = $num1 + $num2;
return $sum;
}
Yna gellir galw'r swyddogaeth hon trwy gyfeirio at enw'r ffwythiant a phasio'r gwerthoedd mewnbwn dymunol i mewn fel dadleuon:
$result = addNumbers(5,7);
echo $result; // Output: 12
Mae swyddogaethau'n ddefnyddiol yn PHP oherwydd eu bod yn caniatáu ichi drefnu'ch cod, gan ei wneud yn fwy darllenadwy a chynnal a chadw, ac mae hefyd yn caniatáu ichi ailddefnyddio'r un cod sawl gwaith heb orfod ei ailysgrifennu.
Swyddogaethau a Ddiffiniwyd gan Ddefnyddwyr
Yn PHP, mae swyddogaethau a ddiffinnir gan ddefnyddwyr yn swyddogaethau sy'n cael eu creu a'u diffinio gan y defnyddiwr (yn hytrach na swyddogaethau adeiledig sydd eisoes ar gael yn PHP). Mae'r swyddogaethau hyn yn cael eu creu gan y datblygwr i gyflawni tasgau neu weithrediadau penodol a gellir eu galw sawl gwaith trwy gydol y rhaglen yn ôl yr angen.
Dyma enghraifft o swyddogaeth a ddiffinnir gan y defnyddiwr yn PHP:
function greetUser($name) {
echo "Hello, $name!";
}
Mae'r swyddogaeth hon yn cymryd un paramedr, $name
, ac yn defnyddio'r echo
datganiad i argraffu cyfarchiad. Yna gellir galw'r swyddogaeth hon trwy gyfeirio at enw'r ffwythiant a phasio'r gwerth mewnbwn dymunol fel dadl:
greetUser("John"); // Output: "Hello, John!"
Gall swyddogaethau hefyd ddychwelyd gwerth yn hytrach na'i argraffu'n uniongyrchol. Dyma enghraifft o ffwythiant sy'n dychwelyd sgwâr rhif:
function square($number) {
return $number * $number;
}
Mae'r swyddogaeth hon yn cymryd un paramedr, $number
a dychwelyd sgwar y rhif hwnnw.
$result = square(5);
echo $result; // Output: 25
Mae swyddogaethau a ddiffinnir gan ddefnyddwyr yn PHP yn arf hynod bwerus a defnyddiol, maent yn caniatáu ichi drefnu'ch cod, gan ei wneud yn fwy darllenadwy, cynaliadwy a hefyd yn caniatáu ichi ailddefnyddio'r un cod sawl gwaith heb orfod ei ailysgrifennu.
Dadleuon Swyddogaeth
Yn PHP, dadleuon swyddogaeth yw'r gwerthoedd mewnbwn sy'n cael eu trosglwyddo i ffwythiant pan gaiff ei alw. Defnyddir y gwerthoedd hyn gan y ffwythiant i gyflawni ei weithrediad bwriadedig a gellir eu cyrchu o fewn y swyddogaeth gan ddefnyddio'r newidynnau paramedr a ddiffinnir yn niffiniad y ffwythiant.
Er enghraifft, ystyriwch y swyddogaeth ganlynol:
function addNumbers($num1, $num2) {
$sum = $num1 + $num2;
return $sum;
}
Mae'r swyddogaeth hon yn cymryd dwy ddadl, $num1
ac $num2
, a ddefnyddir i wneud y cyfrifiad $sum = $num1 + $num2
.
Pan elwir y ffwythiant hwn, gallwch basio unrhyw ddau rif fel dadleuon.
$result = addNumbers(5,7);
echo $result; // Output: 12
Yn yr engraifft uchod, trosglwyddir 5 a 7 fel dadleuon i'r addNumbers
swyddogaeth, ac mae'r gwerthoedd hyn yn cael eu neilltuo i'r paramedrau $num1
ac $num2
o fewn y swyddogaeth.
Mae'n bwysig nodi bod yn PHP, wrth alw swyddogaeth, rhaid i'r dadleuon a basiwyd gyd-fynd â'r nifer a'r math o baramedrau a ddiffinnir yn y diffiniad swyddogaeth, fel arall, bydd yn codi gwall.
Gallwch hefyd osod gwerthoedd rhagosodedig ar gyfer dadleuon swyddogaeth, felly os gelwir y swyddogaeth heb basio dadl benodol, bydd yn defnyddio'r gwerth rhagosodedig yn lle hynny.
function greetUser($name = "user") {
echo "Hello, $name!";
}
Yn yr enghraifft hon, os gelwir y swyddogaeth heb basio dadl, bydd yn defnyddio'r gwerth rhagosodedig "user"
ar gyfer y $name
paramedr.
greetUser(); // Output: "Hello, user!"
Mae dadleuon swyddogaeth yn nodwedd bwerus yn PHP, maent yn caniatáu i'r datblygwr ysgrifennu swyddogaethau mwy hyblyg ac amlbwrpas a all addasu i wahanol fewnbynnau, gan ei gwneud yn fwy darllenadwy a chynaladwy.
Holi ac Ateb
C: Beth yw swyddogaethau yn PHP?
A: Mae swyddogaethau yn PHP yn flociau o god y gellir eu hailddefnyddio sawl gwaith mewn rhaglen. Gallant gymryd mewnbwn ar ffurf paramedrau, cyflawni tasg benodol a dychwelyd allbwn.
C: Sut i ddiffinio swyddogaeth yn PHP?
A: Mae swyddogaethau yn PHP yn cael eu diffinio gan ddefnyddio'r function
allweddair, ac yna enw'r swyddogaeth a set o gromfachau ()
. Mae'r cod i'w weithredu wedi'i osod o fewn braces cyrliog {}
. Er enghraifft, function myFunction() { // code to be executed }
C: Sut i alw swyddogaeth yn PHP?
A: Gelwir swyddogaeth trwy gyfeirio at ei enw ac yna cromfachau ()
. Er enghraifft, myFunction();
. Os yw swyddogaeth yn derbyn paramedrau, cânt eu pasio o fewn y cromfachau wrth alw'r ffwythiant.
C: Beth yw dadleuon swyddogaeth a pharamedrau yn PHP?
A: Dadleuon ffwythiant yw'r gwerthoedd a drosglwyddir i ffwythiant pan y'i gelwir. Gelwir y newidynnau cyfatebol yn y diffiniad swyddogaeth yn baramedrau.
C: Sut i ddychwelyd gwerth o swyddogaeth yn PHP?
A: Gellir dychwelyd gwerth o swyddogaeth gan ddefnyddio'r return
allweddair, ac yna'r gwerth neu'r newidyn i'w ddychwelyd. Er enghraifft, return $result;
C: A all swyddogaeth ddychwelyd gwerthoedd lluosog yn PHP?
A: Nid yw PHP yn cefnogi dychwelyd gwerthoedd lluosog yn uniongyrchol, ond gellir dychwelyd arae neu wrthrych, sy'n cynnwys gwerthoedd lluosog.
C: Beth yw swyddogaethau adeiledig yn PHP?
A: Mae swyddogaethau adeiledig yn swyddogaethau sydd eisoes wedi'u diffinio yn PHP a gellir eu galw mewn rhaglen heb fod angen cod ychwanegol. Mae enghreifftiau yn cynnwys strlen()
, array_pop()
, date()
, a sqrt()
.
C: Beth yw swyddogaethau a ddiffinnir gan ddefnyddwyr yn PHP?
A: Mae swyddogaethau a ddiffinnir gan ddefnyddwyr yn swyddogaethau sy'n cael eu creu gan y datblygwr a gellir eu defnyddio yn y rhaglen yn unol â'u gofynion. Gall y swyddogaethau hyn ddefnyddio swyddogaethau adeiledig, gwerthoedd dychwelyd, a derbyn paramedrau.