Di vê tutoriyê de em ê li ser rêbazên statîk ên di PHP OOP de bêtir fêr bibin. Em ê nîqaş bikin ka rêbazên statîk ji bo çi têne armanc kirin, kengê meriv wan bikar tîne, hevoksaziyê û cûdahiya di navbera rêbazên statîk û ne-statîk de.
Di PHP de rêbazên statîk çi ne?
- Rêbazên statîk bi karanîna têne afirandin Static bêjeyê.
- Rêbazên statîk ên çînek rasterast têne gotin. Wateya vê yekê, ne hewce ye ku em mînaka polê biafirînin ku rêbaza wê ya statîk bang bikin.
- Dersek dikare hem rêbazên statîk û hem jî ne-statîk dihewîne.
- Ji bo gazîkirina rêbaza statîk a polê, em operatorê çareseriya çarçovê bikar tînin ::
Hevoksaziya Rêbaza Statîk di PHP de
<?php
class ClassName {
public static function method() {
echo "Hello from PHP!";
}
}
?>
Hevoksazî ji bo gazîkirina rêbaza statîk
ClassName::staticMethod();
Mînak
<?php
class Example {
public static function greetings() {
echo "Hello from PHP!";
}
}
// Calling static method
Example::greetings();
?>
- Di mînaka jorîn de, em çînek ku tê de rêbazek statîk heye diafirînin.
- Em ji rêbaza statîk a vê polê re dibêjin li derve bi karanîna rêbaza çarenûsê.
Banga rêbaza statîk di hundurê polê de - PHP
- Di PHP de, xwe keyword dihêle ku meriv rêbaza xweya statîk di hundurê polê de gazî bike. Li mînaka jêrîn binêrin ku tê de em çînek bi rêbazek statîk diafirînin û jê re dibêjin hundurê çêkerê polê.
- xwe::methodName() hevoksaziya giştî ye ku di hundurê polê de gazîkirina rêbaza statîk dike.
<?php
class Example {
public static function greetings() {
echo "Hello from PHP!";
}
public function __construct() {
self::greetings();
}
}
new Example();
?>
Banga Rêbaza Statîk di hundurê çînek din de - PHP
Pir balkêş e ku meriv doza rêbazên statîk bikar bîne, ku em dikarin di hundurê çînek din de rêbazek statîk a gelemperî bi nav bikin. Bînin bîra xwe, divê ew rêbazek statîk a gelemperî be.
<?php
class Example{
public static function greetings() {
echo "Hello from PHP!";
}
}
class Example2{
public function msg() {
Example::greetings();
}
}
?>
Di pola zarokan de gazîkirina rêbazek statîk - PHP
Di mijara mîrasbûnê de, em dikarin bi karanîna mêtoda statîkî ya çîna dêûbavê di hundurê pola zarok de binav bikin dê û bav keyword. Li nimûneya jêrîn binêrin.
<?php
class Example {
protected static function getMessage() {
return "Message from static method";
}
}
class Child1 extends domain {
public $name;
public function __construct() {
$this->name= parent::getMessage();
}
}
$child1= new child1();
echo $child1-> name;
?>
- Di mînaka jorîn de, em bi hin rêbazek statîk çînek dêûbav diafirînin.
- Di heman demê de, em çînek din diafirînin ku çîna dêûbav dirêj dike.
- Banga rêbaza statîk a çîna dêûbav bikar bînin dê û bav keyword li pey navê rêbaza statîk.
Not: Wekî ku me di beşa berê de behs kir ku gazîkirina rêbazek statîk di hundurê çînek din de hewce dike ku ew gelemperî be. Lêbelê, di mijara gazîkirina rêbaza statîk a çîna dêûbav de (mîrasî), guherbarê gihîştina rêbaza statîk dikare bibe alenî or parastin.
Cûdahiya di navbera Rêbazên Statîk û Ne Statîk de
Metoda Statîkî | Rêbaza Ne Statîk |
Em dikarin di hundurê rêbaza statîk de tenê xwe bigihînin taybetmendiyên statîk ên polê an jî çînek din. | Em dikarin hem taybetmendiyên statîk û ne-statîk ên polê an jî çînek din a di hundurê rêbaza ne-statîk de bigihîjin. |
Rêbaza Statîk girêdana zû an berhevkirina-dem-ê bikar tîne. | Rêbaza ne-statîk girêdana dînamîkî an dema xebitandinê bikar tîne. |
Rêbazên statîk di dema cîbicîkirina bernameyê de dewletê diparêzin, ji ber vê yekê ji ber girêdana zû, ew nikarin ji hêla çînek din ve werin paşguh kirin. | Ji ber girêdana dema xebitandinê an tevgera dînamîkî ya rêbaza ne-statîk, em dikarin wan di çînek din de derbas bikin. |
Veqetandina bîrê di rêbaza statîk de bikêrtir e ji ber ku ew bloka bîranînê di hundurê ramê de gava ku bername were darve kirin diyar dike. Heya ku bername bi dawî nebe ew careke din wê nake. | Rêbazên ne-statîk di veqetandina bîranînê de ji ber girêdana dînamîkî kêmtir bikêr in. Her gava ku rêbaza ne-statîk tê gazî kirin, ew bîranîn vediqetîne û piştî ku pêkanîna rêbazê bi dawî dibe, vediqetîne. |
Serlêdana belgeya fermî ya PHP ya rêbazê statîk.