PHP 7.4 scaoileadh teanga cláir

Tar éis bliana d'fhorbairt curtha i láthair eisiúint teanga cláir PHP 7.4. Áiríonn an brainse nua sraith gnéithe nua, chomh maith le roinnt athruithe a bhriseann comhoiriúnacht.

Eochair feabhsúcháin i PHP 7.4:

  • Airíonna Clóscríofa - is féidir dearbhuithe cineáil a áireamh anois ar airíonna aicme, mar shampla:

    Úsáideoir ranga {
    int $id poiblí;
    teaghrán poiblí $name;
    }

  • Giorraithe comhréir chun feidhmeanna a shainiú “fn(parameter_list) => expr” le raon feidhme ceangailteach de réir luacha. Mar shampla, tá “fn($x) => $x + $y” ar aon dul le “$fn2 = feidhm ($x) úsáid ($y) {tuairisceán $x + $y;}”);
  • Oibrí sannachán gearrláimhe "??=" ar féidir a úsáid chun luach réamhshocraithe a shainiú (tá "a ??= b" cosúil le "a = a ?? b", má shainmhínítear "a" stóráiltear a luach, agus mura sainmhínítear é sanntar an luach "b" ;
  • Teoranta deis ordlathas oidhreachta na gcineálacha i gcineálacha tuairisceáin díorthaithe a chaomhnú, nó an cumas ordlathas na gcineálacha bunaidh a aisiompú i gcineálacha argóintí díorthaithe (comhathraitheas cineál aischuir agus argóint cineál contravariance). Is féidir na tógálacha seo a leanas a úsáid i PHP anois:

    aicme A {}
    leathnaíonn aicme B A {}

    léiritheoir ranga {
    modh feidhm phoiblí(): A {}
    }
    Síneann rang ChildProducer Léiritheoir {
    modh feidhm phoiblí(): B {}
    }

  • Oibreoir á dhíphacáil laistigh d'eagair “…$var”, ag ligean ionadú a dhéanamh ar eagair atá ann cheana agus eagar nua á shainiú;

    $parts = [ 'úll', 'piorra'];
    $fruits = [ 'banana', 'oráiste', ...$parts, 'watermelon'];
    // ['banana', 'oráiste', 'úll', 'piorra', 'watermelon'];

  • Deiseanna léiriú amhairc ar líon mór le teorannóirí i liteartha uimhriúla (1_000_000_00);
  • Tacaíocht naisc laga, a ligeann duit tagairt a choinneáil do rud, ach ná bac ar an mbailitheoir truflais an réad gaolmhar a scriosadh;
  • Nua механизм sraithiú réad (meascán de Srathach inchurtha agus __sleep()/__wakeup()), a tháinig in ionad an chomhéadain Srathach is féidir a dhímheas;

    // Filleann sé eagar ina bhfuil staideanna uile an réada;
    feidhm phoiblí __serialize(): eagar;

    // Athchóiríonn sé staid ruda ó eagar
    feidhm phoiblí __unserialize(eagar $data): neamhní;

  • Ceadaithe le caith eisceachtaí ó mhodh __go String();
  • Tacaíocht bhreise chun an taisce cód oibiachta a réamhlódáil. Paraiméadar curtha leis le haghaidh socrú
    opcache.preload, trínar féidir leat script PHP a shonrú a thiomsófar agus a reáchtálfar nuair a thosaíonn an freastalaí. Is féidir leis an script seo opcode comhaid eile a luchtú trína gcuimsiú díreach nó trí úsáid a bhaint as an bhfeidhm opcache_compile_file();

  • Cuireadh feidhm crc32c leis an síneadh Hash chun seiceálacha a ríomh ag baint úsáide as an iltéarmach Castagnoli;
  • Tacaíocht bhreise leis an bhfeidhm password_hash() do mhodhanna hashing pasfhocail argon2i agus argin2id, i gcur i bhfeidhm na leabharlainne Sóidiam, má tá PHP tógtha gan libargon;
  • Feidhm curtha leis mb_str_split(), cosúil le str_split(), ach ag feidhmiú ní le bearta ach le suíomhanna carachtar i dtéad ilbheart;
  • Tá an cumas ag an bhfeidhm strip_tags() anois eagar a chur ar a bhfuil ainmneacha clibeanna, i.e. in ionad strip_tags($str, ' ') is féidir leat strip_tags ($str, ['a', 'p']);
  • proc_open() is féidir na hoibriúcháin a liostú in eagar, seachas teaghrán le rith, agus cuireann sé atreorú snáithe agus tacaíocht ar fáil do thuairisceoir comhaid nialasach;

    proc_open(['php', '-r', 'macalla"Hello World\n";'], $descriptors, $pipes);

    // Cosúil le 2>&1 sa bhlaosc
    proc_open($cmd, [1 => ['píopa', 'w'], 2 => ['atreorú', 1]], $píopaí);

    // cosúil le 2>/dev/null nó 2>nul sa bhlaosc
    proc_open($cmd, [1 => ['píopa', 'w'], 2 => ['null']], $píopaí);

  • Tá síntí Firebird/Interbase, Recode agus WDDX eisiata ón dáileadh bunúsach. Déantar na síntí seo a dháileadh anois trí PECL;
  • Aistrithe go catagóir as dáta gnéithe cosúil le hoibreoirí trínártha neadaithe gan lúibíní, rochtain a fháil ar eilimintí eagar agus teaghráin ag baint úsáide as braces curly (“$ var{$idx}”), an fheidhm is_real() agus réitigh go réadúil, ag baint úsáide as eochairfhocal tuismitheora gan rang tuismitheora, paraiméadar allow_url_ cuir cumraíochtaí san áireamh , ag baint úsáide as array_key_exists() ar réada.

    Na feidhmeanna get_magic_quotes_gpc(), get_magic_quotes_runtime(), agus
    hebrevc(), convert_cyr_string(), money_format(), ezmlm_hash(), restore_include_path(), ldap_control_paged_result_response(), ldap_control_paged_result(), MachnamhType::__toString().

    Tá rabhadh tugtha maidir le húsáid gné atá imithe i léig nuair a dhéantar iarracht siombailí míchearta a phróiseáil i bhfeidhmeanna
    base_convert(), bindec(), octdec() agus hexdec(), agus nuair a shonraítear patrún gan teaghrán i mb_ereg_replace().

Foinse: oscailtenet.ru

Add a comment