Idanwo Alpha ti PHP 8.2 ti bẹrẹ

Itusilẹ alpha akọkọ ti ẹka tuntun ti ede siseto PHP 8.2 ti ṣafihan. Itusilẹ ti wa ni eto fun Oṣu kọkanla ọjọ 24th. Awọn imotuntun akọkọ ti wa tẹlẹ fun idanwo tabi gbero fun imuse ni PHP 8.2:

  • Awọn oriṣi “eke” ati “asan” ni a ti ṣafikun, eyiti o le ṣee lo, fun apẹẹrẹ, lati da ami-ami ti ipari pada pẹlu aṣiṣe tabi iye ofo nipasẹ iṣẹ kan. Ni iṣaaju, "eke" ati "asan" le ṣee lo ni apapo pẹlu awọn iru miiran (fun apẹẹrẹ, "okun | iro"), ṣugbọn nisisiyi wọn le ṣee lo lọtọ: iṣẹ nigbagbogboFalse(): eke {pada eke; }
  • Ṣe afikun agbara lati samisi kilasi kan bi kika-nikan. Awọn ohun-ini ni iru awọn kilasi le ṣee ṣeto ni ẹẹkan, lẹhinna wọn kii yoo wa fun iyipada. Ni iṣaaju, awọn ohun-ini kilasi kọọkan le jẹ samisi kika-nikan, ṣugbọn ni bayi o le tan ipo yii fun gbogbo awọn ohun-ini kilasi ni ẹẹkan. Pato asia “kika nikan” ni ipele kilasi tun ṣe idiwọ afikun agbara ti awọn ohun-ini si kilasi naa. Ifiweranṣẹ kilasi kika nikan {iṣẹ gbogbo eniyan __construct (okun ilu $akọle, onkowe $author,) {} } $post = Ifiweranṣẹ tuntun (/* … */); $post->unknown = 'aṣiṣe'; // Aṣiṣe: Ko le ṣẹda ìmúdàgba ini Post :: $ aimọ
  • Agbara lati ṣẹda awọn ohun-ini ni agbara ni kilasi kan ti parẹ (bii “post-> aimọ” ni apẹẹrẹ loke). Ni PHP 9.0, iwọle si awọn ohun-ini ti ko ni asọye ni akọkọ ninu kilasi yoo ja si aṣiṣe (AṣiṣeException). Awọn kilasi ti o pese awọn ọna __get ati __set fun ṣiṣẹda awọn ohun-ini, tabi awọn ohun-ini ti o ni agbara ni stdClass yoo tẹsiwaju lati ṣiṣẹ laisi iyipada, iṣẹ ti ko tọ nikan pẹlu awọn ohun-ini ti ko si ni yoo da duro lati le daabobo idagbasoke idagbasoke lati awọn aṣiṣe ti o farapamọ. Lati jẹ ki koodu atijọ ṣiṣẹ, abuda "#[AllowDynamicProperties]" jẹ idamọran, gbigba lilo awọn ohun-ini ti o ni agbara.
  • Ti pese agbara lati ṣe àlẹmọ awọn eto ifura ni iṣelọpọ itopase akopọ ni akoko aṣiṣe kan. Gige alaye kan le nilo nigbati alaye nipa awọn aṣiṣe ti o waye ni a firanṣẹ laifọwọyi si awọn iṣẹ ẹnikẹta ti o tọpa awọn iṣoro ati sọfun awọn idagbasoke nipa wọn. Fun apẹẹrẹ, o le yọkuro awọn paramita lati itọpa ti o pẹlu awọn orukọ olumulo, awọn ọrọ igbaniwọle, ati awọn oniyipada ayika. igbeyewo iṣẹ ($ foo, #[\ SensitiveParameter] $ ọrọigbaniwọle, $ baz ) {ju titun Iyatọ ('Aṣiṣe'); } idanwo ('foo', 'ọrọigbaniwọle', 'baz'); Aṣiṣe buburu: Iyatọ ti a ko mu: Aṣiṣe ni idanwo.php: 8 Atọpa akopọ: #0 test.php(11): idanwo ('foo', Nkan (SensitiveParameterValue), 'baz') #1 {akọkọ} ti a sọ sinu test.php lori laini 8
  • Agbara lati paarọ awọn iye oniyipada sinu awọn gbolohun ọrọ nipa lilo "${var}" ati ${(var)}" awọn ikosile ti ti parẹ. Atilẹyin fun lilo wọpọ "{$var}" ati awọn iyipada "$var" ti wa ni idaduro. Fun apẹẹrẹ: "Hello {$ aye}"; O dara "Hello $ aye"; O dara "Hello ${aye}"; Idinku: Lilo ${} ninu awọn gbolohun ọrọ ti wa ni idaduro
  • Awọn ipe ti o ni atilẹyin apakan apakan ti o le pe nipasẹ "call_user_func ($ callable)" ṣugbọn ko ṣe atilẹyin pipe ni fọọmu "$ callable ()": "ara:: ọna" "obi:: ọna" "aimi :: Ọna" ["ara", "ọna"] ["obi", "ọna"] ["imi", "ọna ẹrọ"] ["Ami", "Ọna"]
  • Iyipada ọran ominira-agbegbe ti a ṣe. Awọn iṣẹ bii strtolower () ati strtoupper () ni bayi nigbagbogbo ṣe iyipada ọran awọn ohun kikọ ni sakani ASCII, bi nigbati o ba ṣeto agbegbe si “C”.

orisun: opennet.ru

Fi ọrọìwòye kun