Phetolelo ea puo ea lenaneo la PHP 7.4

Kamora selemo sa ntshetsopele hlahisoa tokollo ea puo ea lenaneo PHP 7.4. Lekala le lecha le kenyelletsa letoto la likarolo tse ncha, hammoho le liphetoho tse 'maloa tse senyang ho lumellana.

Senotlolo ntlafatso ho PHP 7.4:

  • Thepa e Tlantsoeng - thepa ea sehlopha joale e ka kenyelletsa liphatlalatso tsa mofuta, mohlala:

    mosebelisi oa sehlopha {
    sechaba int $id;
    mohala oa sechaba $ lebitso;
    }

  • Kgutsufatsoa syntax bakeng sa ho hlalosa mesebetsi "fn(parameter_list) => expr" e nang le scope e tlamang ka boleng. Ka mohlala, “fn($x) => $x + $y” e tšoana le “$fn2 = function ($x) sebelisa ($y) {khutlisetsa $x + $y;}”);
  • Mosebetsi oa mosebetsi o khuts'oane "??=" e ka sebelisoang ho hlalosa boleng ba kamehla ("a ??= b" e tšoana le "a = a ?? b", haeba "a" e hlalosoa boleng ba eona bo bolokoa, 'me haeba bo sa hlalosoa. e abetsoe boleng "b");
  • Moedi monyetla ho boloka taolo ea lefa ea mefuta mefuteng ea ho khutlisa e nkiloeng, kapa bokhoni ba ho khutlisa maemo a mefuta ea mantlha mefuteng ea likhang tse nkiloeng (covariance mofuta oa ho khutlisa le mofuta oa khang contravariance). Mehaho e latelang e ka sebelisoa hona joale ho PHP:

    sehlopha A {}
    sehlopha sa B se eketsa A {}

    Moetsi oa sehlopha {
    mokhoa oa tšebetso oa sechaba(): A {}
    }
    Sehlopha sa ChildProducer se eketsa Moetsi {
    mokhoa oa tšebetso oa sechaba(): B {}
    }

  • Ho notlolla opareitara ka har'a lihlopha "…$var", lumella etsa sebaka sa li-arrays tse teng ha u hlalosa lethathamo le lecha;

    $likarolo = ['apole', 'pere'];
    $litholoana = ['banana', 'lamunu', …$likarolo, 'khapu'];
    // ['banana', 'orange', 'apole', 'pere', 'mahapu'];

  • Monyetla kemelo ea pono ea lipalo tse kholo tse nang le li-delimiters ka lipalo-palo (1_000_000_00);
  • tshehetso lihokelo tse fokolang, e leng se u lumellang hore u boloke ho buuoa ka ntho e itseng, empa u se ke ua thibela moqoqo oa lithōle ho tlosa ntho e amanang le eona;
  • E ncha mochini serialization ea ntho (motsoako oa Serializable le __sleep()/__wakeup()), e ileng ea nka sebaka sa segokahanyi sa Serializable, se tla tlosoa;

    // E khutlisa lethathamo le nang le maemo ohle a ntho;
    mosebetsi oa sechaba __serialize(): sehlopha;

    // Ho busetsa boemo ba ntho ho tswa ho palo
    mosebetsi oa sechaba __unserialize(data e ngata ea $): lefeela;

  • E dumelletsoeng ho lahlela mekgelo ho tsoa mokgoeng __toString();
  • Ts'ehetso e ekelitsoeng bakeng sa ho kenya cache ea khoutu ea ntho esale pele. E kentse parameter bakeng sa ho hlophisa
    kenya.preload, eo ka eona u ka hlakisang mongolo oa PHP o tla hlophisoa le ho tsamaisoa ha seva se qala. Script ena e ka kenya opcode ea lifaele tse ling ka ho kenyelletsa ka ho toba kapa ka ho sebelisa opcache_compile_file () mosebetsi;

  • E kentse ts'ebetso ea crc32c ho katoloso ea Hash ho bala li-checksums ho sebelisa Castagnoli polynomial;
  • Tšehetso e ekelitsoeng mosebetsing oa password_hash () bakeng sa mekhoa ea hashing ea password argon2i le argin2id, ts'ebetsong ea laebrari ea Sodium, haeba PHP e hahiloe ntle le libargon;
  • Ts'ebetso e ekelitsoeng mb_str_split(), e ts'oanang le str_split(), empa ha e sebetse ka li-byte empa e na le maemo a litlhaku ka khoele ea li-byte tse ngata;
  • Mosebetsi oa strip_tags() joale o na le bokhoni ba ho fetisa lethathamo le nang le mabitso a li-tag, ke hore. sebakeng sa strip_tags($str, ' ') joale u ka hlakisa strip_tags($str, ['a', 'p']);
  • proc_open () e lumella li-operands hore li thathamisitsoe ka bongata, ho e-na le hore khoele e sebetse, hape e fana ka tataiso ea khoele le tšehetso bakeng sa tlhaloso ea faele e se nang letho;

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

    // Joalo ka 2>&1 ka khetla
    proc_open($cmd, [1 => ['pipe', 'w'], 2 => ['redirect', 1]], $lipeipi);

    // joalo ka 2>/dev/null kapa 2> nul ka khetla
    proc_open($cmd, [1 => ['pipe', 'w'], 2 => ['null']], $lipeipi);

  • Li-extensions tsa Firebird / Interbase, Recode le WDDX ha li kenyellelitsoe kabong ea mantlha. Likatoloso tsena joale li ajoa ka PECL;
  • E fetiselitsoe sehlopheng e siiloe ke nako likarolo tse kang li-ternary operators tse se nang masakaneng, ho fihlella likarolo tse ngata le likhoele li sebelisa li-curly braces ("$ var{$idx}"), mosebetsi oa is_real () le ho etsa ntho ea sebele, ho sebelisa lentsoe la sehlooho la motsoali ntle le sehlopha sa motsoali, parameter allow_url_include configurations , ho sebelisa array_key_exists() linthong.

    Mesebetsi get_magic_quotes_gpc(), get_magic_quotes_runtime(), le
    hebrevc(), convert_cyr_string(), money_format(), ezmlm_hash(), restore_include_path(), ldap_control_paged_result_response(), ldap_control_paged_result(), ReflectionType::__toString().

    Ho fanoe ka temoso mabapi le tšebeliso ea tšobotsi e sa sebetseng ha u leka ho sebetsana le matšoao a fosahetseng mesebetsing
    base_convert(), bindec(), octdec() le hexdec(), le ha o hlakisa mohlala o senang likhoele ho mb_ereg_replace().

Source: opennet.ru

Eketsa ka tlhaloso