Beth yw priodweddau statig yn PHP?
Yn union fel y gwnaethom astudio dulliau statig yn y tiwtorial blaenorol, mae priodweddau statig yn PHP yn hygyrch o fewn a thu allan i'r dosbarth yn uniongyrchol.
- Mae practis meddygol sefydlog defnyddir allweddair i ddiffinio priodweddau statig dosbarth.
- I gael mynediad at briodweddau statig dosbarth, rydym yn defnyddio'r gweithredwr datrys cwmpas ::
<?php
class Example {
public static $static_var = "php.org";
}
?>
Enghraifft o briodweddau statig
<?php
class pi {
public static $value = 3.14159;
}
// Get static property
echo pi::$value;
?>
- Yn yr enghraifft uchod, rydyn ni'n creu dosbarth sydd ag eiddo sefydlog.
- Cyrchwch werth yr eiddo statig heb greu gwrthrych y dosbarth.
Gall dosbarth gynnwys priodweddau statig ac ansafonol. Fel y gwyddom o'r adran flaenorol, mae eiddo statig yn hygyrch y tu allan i'r dosbarth gan ddefnyddio'r gweithredwr datrys cwmpas. I gael mynediad i'r eiddo statig y tu mewn i'r dosbarth, rydym yn defnyddio'r hunan allweddair. Er enghraifft.
<?php
class pi {
public static $value=3.14159;
public function staticValue() {
return self::$value;
}
}
$pi = new pi();
echo $pi->staticValue();
?>
Sut i gael mynediad i'r eiddo statig yn y dosbarth plant?
- Ystyriwch senario lle mae gennym ni ddosbarth plentyn sy'n ymestyn y dosbarth rhiant â rhywfaint o werth statig.
- Cyrchwch werth eiddo statig ar y dosbarth plentyn gan ddefnyddio rhiant allweddair. Mae allweddair rhieni yn cynorthwyo'r dosbarth plentyn i fachu gwerth y dosbarth rhieni. Edrychwch ar yr enghraifft ganlynol.
<?php
class pi {
public static $value=3.14159;
}
class x extends pi {
public function xStatic() {
return parent::$value;
}
}
// Get value of static property directly via child class
echo x::$value;
// or get value of static property via xStatic() method
$x = new x();
echo $x->xStatic();
?>
Cyfeiriad at y ddogfennaeth PHP swyddogol ar gyfer allweddair statig.