Ano ang OOP Class Constants sa PHP?

Ano Ang Oop Class Constants Sa Php



Isang programming paradigm na kilala bilang object-oriented programming (OOP) nagbibigay-daan sa mga user na magsulat ng modular, magagamit muli na mga programa. pare-pareho ang paggamit sa loob ng isang klase ay isa sa mga tampok ng OOP. Mga Constant ng Klase sa PHP ay mga halaga na hindi mababago pagkatapos na matukoy ang mga ito. Sila ay mga miyembro ng klase at hindi nauugnay sa anumang partikular na halimbawa ng klase.

Ano ang mga Class Constant sa PHP?

Upang magsimula sa, Mga Constant ng Klase sumangguni sa isang halaga na nananatiling pare-pareho sa kurso ng isang script. Sa OOP, pinapayagan nito ang programmer na tukuyin ang isang halaga na may partikular na kahulugan sa loob ng klase at hindi ma-update ng alinman sa mga pamamaraan ng klase. Ang const keyword ay ginagamit upang tukuyin mga pare-pareho ng klase , na binibigyan ng pare-parehong halaga sa kabuuan ng script.







A pare-pareho ang klase ay isang halaga na tinukoy sa loob ng isang klase na nananatiling pare-pareho sa buong pagpapatupad ng programa. Ang termino const ay ginagamit upang tukuyin ang mga ito, pagkatapos ay sinusundan ng pangalan at halaga ng pare-parehong iyon. Kapag natukoy na, hindi na mababago ang mga ito sa panahon ng runtime.



Halimbawa, maaari nating tukuyin ang a pare-pareho ang klase para sa halaga ng Pi sa sumusunod na paraan:



klase Math {
const PI = 3.14 ;
}


Dito, tinukoy namin ang class constant PI para sa klase ng Math bilang 3.14. Dahil ang isang constant ay nakatali sa klase at hindi isang instance ng isang klase, maa-access natin ito nang walang instance tulad ng sa:





echo Math::PI;


Kung ikukumpara sa mga regular na variable, mga pare-pareho ng klase may ilang kapansin-pansing pagkakaiba. Una, ang mga ito ay hindi nababago, ibig sabihin, hindi na sila mababago kapag tinukoy. Pangalawa, pare-pareho ang mga halaga ay case-sensitive, hindi katulad ng mga variable sa PHP. Higit pa rito, ang mga constant ay tinukoy gamit ang const keyword, samantalang ginagamit ng mga variable ang ay keyword, na isang mahalagang pagkakaiba.

Pag-access sa Mga Constant ng Klase

Ina-access mga pare-pareho ng klase maaaring gawin sa dalawang paraan.



1: Paggamit ng Scope Resolution (::)

Una, ang mga pare-pareho ng klase ma-access gamit ang resolution ng saklaw (::) operator, tulad ng sa:

Pangalan ng klase::CONSTANT_NAME


Tingnan ang isang halimbawa:

< ?php
klaseng Tao {
const Pangalan = 'Larry' ;
const Edad = 32 ;
const Nasyonalidad = 'Amerikano' ;
}
echo Tao::Pangalan, ' \n ' ;
echo Tao::Edad, ' \n ' ;
echo Tao::Nasyonalidad;
? >


Sa code sa itaas, ang Tao Tinutukoy ng klase ang Pangalan, Edad, at Nasyonalidad bilang tatlo mga pare-pareho . Ang bawat pare-pareho ay may string o integer na halaga na tinukoy para dito.

Ang :: ginagamit ang operator kasabay ng pangalan ng constant para ma-access ang value ng isang class constant. Halimbawa, ginagamit namin ang syntax Tao::Pangalan upang mabawi ang halaga ng Pangalan pare-pareho.

Sa wakas, ipi-print namin ang mga halaga ng mga constant ng Pangalan, Edad, at Nasyonalidad sa screen gamit ang echo command.

2: Paggamit ng 'sarili' na Keyword

Bilang kahalili, maaari rin nating i-access ang mga pare-pareho ng klase sa loob mismo ng klase gamit ang `sarili` keyword na sinusundan ng palaging pangalan na ibinigay sa ibaba:

sarili::CONSTANT_NAME


Tumingin sa isang halimbawa upang ma-access ang isang pare-pareho gamit ang sarili keyword.

< ?php
bilog ng klase {
const PI = 3.14159 ;
pribado $radius ;
pampubliko function __construct ( $radius ) {
$ito - > radius = $radius ;
}
pampubliko function Lugar ( ) {
bumalik sarili::PI * $ito - > radius * $ito - > radius;
}
}
$bilog = bagong Circle ( 16 ) ;
echo $bilog - > Lugar ( ) ;
? >


Sa halimbawa sa itaas na ito, ang isang klase na pinangalanang Circle ay tumutukoy sa isang pribadong pag-aari na tinatawag na $radius at isang pare-parehong tinatawag na PI. Ang formula na ginamit ng getArea() function upang makuha ang lugar ng isang bilog ay PI * radius * radius , kung saan ang PI ay ang value ng PI constant at ang radius ay ang value ng $radius parameter.

Sa loob ng getArea() paraan, ginagamit namin ang sarili keyword na sinusundan ng pangalan ng constant upang makuha ang halaga ng PI constant: sarili::PI .


Mayroong ilang mga pagsasaalang-alang na dapat tandaan habang tinutukoy mga pare-pareho ng klase . Una, siguraduhin na ang pangalan ng class constant ay natatangi sa loob ng klase. Pangalawa, dapat itong sumunod sa parehong mga kombensiyon sa pagbibigay ng pangalan gaya ng mga pangalan ng klase, iyon ay, ang paggamit ng Camel Case para sa mga constant. Sa wakas, isang magandang kasanayan na tukuyin lamang ang mga scalar na halaga, tulad ng mga integer at string, bilang mga pare-pareho ng klase .

Pamana ng Class Constants

Isa pang mahalagang katangian ng mga pare-pareho ng klase ay maaari silang mamana ng mga klase ng bata. Sa esensya, maa-access ng isang subclass ang mga constant value na tinukoy ng parent class nito gamit ang magulang keyword. Halimbawa:

< ?php
klase Hayop {
const ANIMAL_TYPE = 'mammal' ;
}
klase Dog extend Hayop {
pampubliko function getType ( ) {
echo 'Ang aso ay isang' , magulang::ANIMAL_TYPE;
}
}
$aso = bagong Aso ( ) ;
$aso - > getType ( ) ;
? >


Sa larawang ito, ang klase ng Hayop ay may pare-pareho na may halagang ' mammal ' pinangalanan ANIMAL_TYPE . Ang aso ay isang subclass na nagmula sa klase ng Animal.

Ang pampublikong function getType() ng klase ng Aso ay naglalabas lamang ng halaga ng A NIMAL_TYPE pare-pareho sa pamamagitan ng pag-access sa pare-parehong klase ng magulang gamit ang magulang::keyword .

Sa wakas, gumawa kami ng object ng klase ng Aso at ginagamit ang getType() function, na nagbabalik ng halaga ng minanang constant ng klase ng Animal ANIMAL_TYPE .

Konklusyon

Ang gamit ng mga pare-pareho ng klase ay isang mahalagang bahagi ng Object-Oriented Programming sa PHP at iba pang mga programming language . Sa pamamagitan ng paggamit mga pare-pareho ng klase , maiiwasan natin ang mga hard-coded na value sa program, na maaaring maging abala habang ina-update ang code. Mahalagang sumunod sa mga kombensiyon sa pagbibigay ng pangalan at isaisip ang accessibility ng mga constant ng klase sa loob ng programa habang tinutukoy ang mga ito.