Jump to content
php.lv forumi

Late Static Binding


eT`

Recommended Posts

get_called_calss() atgriež string formā klases nosaukumu, kā rezultātā tas, ko tu patiesībā salīdzini ir

 

static::metodesnosaukums()

ar

klasesnosaukums::metodesnosaukums()

 

Tā kā vecākās PHP versijās tāds static:: nebija atļauts, tad iespējams, ka get_called_class() ir vērts izmantot, lai nodrošinātu strādāšanu uz vecākām versijām (pieļauju, ka arī get_called_class() funkcionalitāti var emulēt uz vecākām PHP versijām). Visādi citādi iespējams, ka gaumes jautājums - tāpat arī self::method() vietā tu vari rakstīt __CLASS__::method() vai klasesnosaukums::method(); un droši vien vēl visādas manipulācijas.

 

Ja tu apzināti lieto late static binding, tad es stipri ieteiktu lietot tieši static::method() pierakstu, lai nākamajam, kas lasīs tavu kodu viss būtu skaidrs bez baigās iedziļināšanās.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...