Siideynta luuqadda barnaamijka PHP 7.4

Sanad ka dib horumarka soo bandhigay sii daynta luqadda barnaamijka PHP 7.4. Laanta cusub waxaa ku jira taxane cusub oo sifooyin cusub ah, iyo sidoo kale dhowr isbedel oo jebiya iswaafajinta.

Furaha horumar PHP 7.4:

  • Guryaha lagu Qoray - Guryaha fasalka hadda waxaa ku jiri kara caddaynta nooca, tusaale ahaan:

    Isticmaale fasalka {
    dadwaynaha int $id;
    xadhig dadweyne $name;
    }

  • La soo gaabiyey syntax si loo qeexo hawlaha "fn(parameter_list) => expr" oo leh baaxad ku xidhid qiimo. Tusaale ahaan, "fn($x) => $x + $y" waxay la mid tahay "$fn2 = shaqada ($x) isticmaal ($y) {soo celinta $x + $y;}");
  • Hawlwadeenka meelaynta gaaban "??=" oo loo isticmaali karo qeexida qiimaha caadiga ah ("a ??= b" waxay la mid tahay "a = a ?? b", haddii "a" la qeexo qiimaheeda waa la kaydiyaa, haddii aan la qeexinna waxaa loo qoondeeyay qiimaha "b");
  • Xaddidan fursad ilaalinta kala sareynta dhaxalka ee noocyada soo noqoshada, ama awooda lagu badalo kala sareynta noocyada asalka ah ee noocyada doodaha la soo saaray (wada noolaansho nooca soo noqoshada iyo nooca doodda khilaaf). Dhismayaasha soo socda ayaa hadda lagu isticmaali karaa PHP:

    fasalka A {}
    fasalka B wuxuu fidiyaa A {}

    Soo saaraha fasalka {
    Habka shaqada guud(): A {}
    }
    Soo saaraha fasalka wuxuu fidiyay soo saaraha {
    Habka shaqada guud(): B {}
    }

  • Ka-soo-saarista hawl-wadeenka gudaha shaxda β€œβ€¦$var”, oggolaanshaha samee beddelka shaxanka jira marka la qeexayo shax cusub;

    $ qaybo = ['tufaaxa', 'pear'];
    $fruits = ['mooska', 'orange', …$ qaybo, ' qaraha '];
    // ['mooska', 'orange', 'tufaax', 'pear', 'qare'];

  • Fursad muuqaal muuqaal ah oo tiro badan oo leh xadeeyayaal xagga suugaanta tirooyinka ah (1_000_000_00);
  • taageero links daciif ah, kaas oo kuu ogolaanaya inaad sii haysato tixraaca shay, laakiin ha ka xannibin qashin ururiyaha inuu tirtiro shayga la xidhiidha;
  • Cusub habka serialization shayga (isku-dar ah Serializable iyo __ hurdo () / __ toosin ()), kaas oo bedelay interface Serializable, kaas oo la dhimi doonaa;

    // Soo celiyaa shax ka kooban dhammaan xaaladaha shayga;
    hawlaha guud __serialize(): array;

    // Ka soo celisa xaaladda shay ka soo ururinta
    hawlaha guud __unserialize(array $data): void;

  • La oggol yahay in lagu tuuro ka reebban habka __toString();
  • Taageero lagu daray horudhaca koodka koodka shayga. Qiyaasta lagu daray dejinta
    opcache.preload, kaas oo aad ku qeexi karto qoraal PHP ah oo la ururin doono oo socon doona marka server-ku bilaabo. Qoraalkani waxa uu ku shubi karaa opcode-ka faylalka kale iyada oo loo marayo ka mid ahaanshahooda tooska ah ama isticmaalaya opcache_compile_file();

  • Shaqada crc32c oo lagu daray Hash kordhinta si loo xisaabiyo jeegaga iyada oo la adeegsanayo tirada badan ee Castagnoli;
  • Taageero lagu daray shaqada password_hash () ee hababka hashing password argon2i iyo argin2id, ee hirgelinta maktabadda Sodium, haddii PHP la dhiso iyada oo aan libargon;
  • Shaqada lagu daray mb_str_split(), oo la mid ah str_split(), laakiin aan ku shaqayn bytes laakiin leh boosas xarfo ah oo ku jira xadhkaha-byte badan;
  • Shaqada strip_tags() hadda waxay leedahay awood ay ku gudbiso array leh magacyo sumad, ie. halkii aad ka ahaan lahayd strip_tags($str, ' ') waxaad hadda cayimi kartaa strip_tags($str, ['a','p']);
  • proc_open() waxa ay ogolaataa hawl-wadeenada in lagu taxo qaab habaysan, halkii ay ka ahaan lahaayeen xadhig si ay u ordaan, waxa kale oo ay siisaa mawduuca dib u habaynta iyo taageerada sharaxaha faylka null;

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

    // Sida 2>&1 qolof ku jirta
    proc_open($cmd, [1 => ['tuubo', 'w'], 2 => ['redirect', 1]], $tuubo);

    // sida 2>/dev/null ama 2>nul in shell
    proc_open($cmd, [1 => ['tuubo', 'w'], 2 => ['null']], $tuubo);

  • Firebird/Interbase, Recode iyo WDDX kordhinta ayaa laga saaray qaybinta aasaasiga ah. Kordhintan waxaa hadda loo qaybiyaa PECL;
  • Loo wareejiyay qaybta duugoobay astaamo ay ka mid yihiin hawl-wadeenada ternary ee buul leh oo aan lahayn jaan-qaadyo, gelitaanka walxaha soo diyaarsan iyo xargaha iyadoo la isticmaalayo biraha curdunka ah ("$var{$idx}"), is_real() shaqada iyo u shubista dhabta ah, iyadoo la adeegsanayo erayga muhiimka ah ee waalidka oo aan lahayn fasalka waalidka, cabbirka allow_url_include , addoo isticmaalaya array_key_exists() walxaha.

    Hawlaha waxay helayaan_magic_quotes_gpc(), get_magic_quotes_runtime (), iyo
    hebrevc (), convert_cyr_string (), money_format (), ezmlm_hash (), restore_include_path (), ldap_control_paged_result_response (), ldap_control_paged_result (), MilicsigaType :: __ toString ().

    Digniin ku saabsan isticmaalka sifo duugowday ayaa la bixiyay markii la isku dayay in la habeeyo calaamadaha khaldan ee shaqooyinka
    base_convert (), bindec (), octdec () iyo hexdec(), iyo marka la tilmaamayo qaab aan xadhig ahayn ee mb_ereg_replace ().

Source: opennet.ru

Add a comment