Tá an chéad eisiúint alfa den bhrainse nua den teanga ríomhchlárúcháin PHP 8.2 curtha i láthair. Tá an scaoileadh sceidealta le haghaidh 24 Samhain. Na príomhnuálaíochtaí atá ar fáil cheana féin le haghaidh tástála nó pleanáilte le cur i bhfeidhm i PHP 8.2:
- Cuireadh cineálacha ar leith isteach “bréagach” agus “null”, ar féidir a úsáid, mar shampla, le haghaidh feidhm chun bratach foirceanta earráide nó luach folamh a thabhairt ar ais. Roimhe seo, ní fhéadfaí “bréagach” agus “null” a úsáid ach amháin i gcomhar le cineálacha eile (mar shampla, “teaghrán | bréagach”), ach anois is féidir iad a úsáid ar leithligh: feidhm alwaysBalse(): bréagach { return false; }
- Cuireadh leis an gcumas rang inléite amháin a mharcáil. Ní féidir airíonna i ranganna den sórt sin a shocrú ach uair amháin, agus ní féidir iad a athrú ina dhiaidh sin. Roimhe seo, d'fhéadfaí airíonna ranga aonair a mharcáil inléite amháin, ach anois is féidir leat an mód seo a chumasú do gach maoin ranga ag an am céanna. Má shonraítear an bhratach “inléite amháin” ag leibhéal an ranga, cuirtear bac freisin ar airíonna a chur leis an rang go dinimiciúil. aicme inléite amháin Post { feidhm phoiblí __construct( teaghrán poiblí $title, Údar poiblí $author, ) {} } $ post = Post nua(/* … */); $post->unknown = 'mícheart'; // Earráid: Ní féidir an t-airí dinimiciúil a chruthú Post::$unknown
- Tá an cumas chun airíonna a chruthú go dinimiciúil i rang (cosúil le "post->anaithnid" sa sampla thuas) imithe i léig. I PHP 9.0, beidh earráid (ErrorException) mar thoradh ar rochtain a fháil ar airíonna nach bhfuil sainithe ar dtús sa rang. Leanfaidh ranganna a sholáthraíonn modhanna __get agus __set chun airíonna a chruthú, nó airíonna dinimiciúla in stdClass ag obair gan athruithe, ní thacófar ach le hobair intuigthe le hairíonna nach bhfuil ann chun an forbróir a chosaint ó fhabhtanna ceilte. Chun obair an tseanchóid a chaomhnú, moltar an tréith “#[AllowDynamicProperties]”, a cheadaíonn airíonna dinimiciúla a úsáid.
- Soláthraíonn sé an cumas paraiméadair íogair a scagadh san aschur rian cruachta le linn earráide. D’fhéadfadh go mbeadh gá le faisnéis áirithe a ghearradh amach nuair a sheoltar faisnéis faoi earráidí a tharlaíonn go huathoibríoch chuig seirbhísí tríú páirtí a rianaíonn fadhbanna agus a chuireann forbróirí ar an eolas fúthu. Mar shampla, is féidir leat paraiméadair a chuimsíonn ainmneacha úsáideoirí, pasfhocail agus athróga timpeallachta a eisiamh ón rianú. tástáil feidhme ( $ foo , #[ \ SensitiveParameter ] $password, $baz ) { caith Eisceacht nua ('Earráid'); } tástáil ('foo', 'focal faire', 'baz'); Earráid mharfach: Neamhghafa Eisceacht: Earráid i test.php:8 Rian cruachta: #0 test.php(11): test('foo', Object(SensitiveParameterValue), 'baz') #1 {main} thrown in test.php ar líne 8
- Tá an cumas luachanna athróg a chur in ionad teaghráin ag baint úsáide as na sloinn "${var}" agus ${(var)} imithe as an áireamh. Coinníodh an tacaíocht do na hionadaigh "{$var}" agus "$var" a úsáidtear go coitianta. Mar shampla: "Dia duit {$world}"; OK "Dia duit $world"; OK "Dia duit ${world}"; Gan dul i léig: níl sé ceadaithe ${} a úsáid ina theaghráin
- Glaoitear gutháin a dtacaítear go páirteach leo ar féidir glaoch orthu trí "call_user_func($callable)" ach ní thacaíonn glaoch i bhfoirm "$callable()": "self::method" "tuismitheoir::modh" "statach" ::modh " ["féin", "modh"] ["tuismitheoir", "modh"] ["statach", "modh"] ["Foo", "Bar::modh"] [nua Foo, "Bar: :modh" ]
- Cur i bhfeidhm comhshó cásanna locale-neamhspleách. Tiontaíonn feidhmeanna cosúil le strtolower() agus strtoupper() cás na gcarachtar sa raon ASCII i gcónaí amhail is go bhfuil siad socraithe don locale "C".
Foinse: oscailtenet.ru
