Beth yw gofodau enwau yn PHP?
Disgrifir bylchau enw yn PHP hefyd fel cymwysyddion sy'n darparu dwy brif swyddogaeth i'r rhaglen.
- Gan ddefnyddio gofod enwau trefnwch y cod trwy grwpio'r dosbarthiadau o'r un natur yn un gofod enw.
- Mae gofod enwau yn caniatáu i ni ddefnyddio'r un enw ar gyfer mwy nag un dosbarth oherwydd eu bod wedi'u lapio yn y gofod enwau.
Enghraifft Gyffredinol o Fannau Enw
Er enghraifft, mae gennym grŵp o ddosbarthiadau sy'n perfformio'r gweithrediadau mathemategol sylfaenol DMAS (Rhannu, Lluosi, Adio a Thynnu). Mae gennym hefyd grŵp arall o ddosbarthiadau sy'n paratoi canlyniad myfyrwyr dosbarth.
Mae gofodau enw yn ein galluogi i drefnu'r ddwy set hyn o ddosbarthiadau yn ddau fwlch enw. Bydd un gofod enw yn cynnwys y dosbarthiadau sy'n gysylltiedig â mathemateg a'r llall yn cynnwys dosbarthiadau cyfrifo canlyniadau.
Sut i ddatgan bod Namespace yn PHP?
- Mae Namespace wedi'i ddatgan ar frig y sgript PHP fel y gall fod ar gael ar draws y ffeil.
- gofod enwau allweddair yn cael ei gadw ar gyfer datgan y bylchau enw.
Cystrawen
// Declare a namespace maths:
namespace Maths;
Nodyn: Mae'n orfodol datgan y gofod enw ar frig y ffeil/ Byddai'r cod canlynol yn anghywir.
<?php
echo "Hello PHP!";
namespace Maths;
...
?>
Yn awr, edrychwch ar yr ochr arall i'r pwnc hwn, sef y dosbarthiadau sy'n rhan o'r gofod enwau. Rydyn ni'n cymryd y dosbarth Mathemateg fel dosbarth enghreifftiol ac yn ei ddatgan yn y gofod enwau.
Creu dosbarth Rhannu yn y gofod enwau Math
<?php
namespace Maths;
class Division {
public function divide($numenator, $denominator) {
$result = $numenator/$denominator;
echo $result;
}
}
$div= new Division();
?>
<!DOCTYPE html>
<html>
<body>
<?php
$div->divide(6, 3);
?>
</body>
</html>
- Yn yr enghraifft uchod, rydyn ni'n creu dosbarth Divison yn y gofod enwau Mathemateg. Canolbwyntiwch ar y defnyddio gofod enwau defnyddio allweddair ar frig dosbarth yr Is-adran. Mae'n diffinio bod y dosbarth Divison hwn yn rhan o ofod enwau Mathemateg.
- Nawr, gallwn gyrchu'r dull rhannu unrhyw le gan ddefnyddio'r gofod enwau Mathemateg yn ein cod.
Sut i ddatgan bylchau enw nythu?
Gadewch i ni dybio ein bod am ddatgan y gofod enwau Mathemateg y tu mewn i'r gofod enwau cod.
namespace Code\Maths;
Sut i ddefnyddio Namespaces yn PHP?
- Nid oes angen gwrthrych ar y dosbarth sy'n perthyn i ofod enw. Gallwn gyrchu'r dosbarth yn y cod sy'n defnyddio gofod enw'r dosbarth yr ydym am ei gyrchu heb greu ei enghraifft.
- I gael mynediad i ddosbarth y tu allan i'r gofod enw, gallwn ei wneud trwy atodi'r gofod enw iddo.
enghraifft
$div= new Maths\division()
$mul= new Maths\multiplication();
Pan fydd gennym lawer o ddosbarthiadau sy'n defnyddio'r un gofod enw, mae'n symlach defnyddio'r allweddair gofod enwau yn hytrach na'u cyrchu fel yn yr enghraifft uchod.
namespace Maths;
$div = new division();
$mul = new multiplication();
Yn yr enghraifft uchod, rydyn ni'n cyrchu'r dosbarthiadau rhannu a lluosi heb ddefnyddio Maths\ranniad na chymhwyster lluosi Mathemateg.
Defnyddio Alias gyda Namespace
Mae rhoi rhywfaint o arallenw (llysenw) i ofod enw yn haws i'w ysgrifennu o fewn y cod. Mae hyn yn ddefnyddiol pan fydd y gofod enw yn rhy hir neu'n ddiflas i'w ysgrifennu dro ar ôl tro.
enghraifft
use Maths as M;
$div = new M\division();
Trosolwg o ofodau enwau yn PHP yn y dogfennaeth PHP swyddogol.