PHP 8.2 fa'alauiloa gagana fa'apolokalame

Ina ua maeʻa le tausaga o le atinaʻe, na tuʻuina atu le faʻasalalauga o le PHP 8.2 gagana polokalame. O le lala fou e aofia ai se faasologa o foliga fou, faʻapea foʻi ma le tele o suiga e motusia le fetaui.

Fa'aleleia atili ile PHP 8.2:

  • Fa'aopoopo le tomai e maka ai se vasega e na'o le faitau. O meatotino i totonu o ia vasega e mafai ona faʻatulagaina naʻo le tasi, a maeʻa ona le avanoa mo suiga. I le taimi muamua, o meatotino a vasega ta'itasi e mafai ona fa'ailoga na'o le faitau, ae o lea e mafai ona e fa'aola le faiga lea mo meatotino uma a le vasega i le taimi e tasi. O le fa'amaotiina o le fu'a "na'o le faitau" i le vasega o lo'o poloka ai le fa'aopoopoina malosi o meatotino i le vasega. faitau na'o le vasega Fa'asalalau { galuega fa'alaua'itele __fausia( manoa fa'alaua'itele $title, Tusitala fa'alaua'itele $tusitala, ) {} } $post = Meli fou(/* … */); $post->le iloa = 'sese'; // Sese: Le mafai ona fa'atupu meatotino fa'amalosi Post::$le iloa
  • Faʻaopoopo ituaiga eseese "saʻo", "sese" ma le "null", lea e mafai ona naʻo le tasi le aoga aoga ma faʻaaogaina, mo se faʻataʻitaʻiga, e toe faʻafoʻi se galuega ma se fuʻa faʻamutaina sese poʻo se tau gaogao. I le taimi muamua, "moni", "sese" ma le "null" e mafai ona faʻaaogaina faʻatasi ma isi ituaiga (mo se faʻataʻitaʻiga, " manoa|sese"), ae o lea ua mafai ona faʻaaogaina eseese: function alwaysFalse (): sese { toe foʻi sese ; }
  • Tuuina atu le gafatia e faamama ai tulaga maaleale i le fa'aputuga fa'asologa o galuega i le taimi o se mea sese. O le tipiina o nisi faʻamatalaga atonu e manaʻomia pe a otometi lava ona auina atu faʻamatalaga e uiga i mea sese i 'auʻaunaga lona tolu e siaki ai faʻafitauli ma logoina i latou e uiga ia i latou. Mo se fa'ata'ita'iga, e mafai ona e fa'ate'aina tapula'a mai le fa'asologa e aofia ai igoa fa'aigoa, upu fa'aigoa, ma suiga o le si'osi'omaga. su'ega galuega( $foo, #[\SensitiveParameter] $password, $baz ) { lafo ese'ese fou('Error'); } su'ega('foo', 'password', 'baz'); Fa'alavelave fa'afuase'i: Tu'uesea le maua: Sese i le test.php:8 Fa'aputu fa'ailoga: #0 test.php(11): su'ega('foo', Object(SensitiveParameterValue), 'baz') #1 {main} lafo i test.php i luga ole laina 8
  • Fa'ataga e fa'amatala fa'auiga tumau i uiga (uiga, se masini mo le toe fa'aogaina o le code). Constants fa'amatalaina i se uiga e mafai ona maua e ala i le vasega o lo'o fa'aogaina le uiga (ae le o le igoa o le uiga). trait Foo { public const CONSTANT = 1; Public function bar(): int { toe fo'i oe:: FA'AVAE; // Fatal error } } class Bar { fa'aoga Foo; } var_dump(Pa::FA'AVAE); // 1
  • Faʻaopoopo le tomai e faʻamaonia ai ituaiga i le faʻailoga masani masani (DNF, Disjunctive Normal Form), lea e mafai ai ona e tuʻufaʻatasia le tuʻufaʻatasia o ituaiga (aoina mai o le lua pe sili atu ituaiga) ma le vaeluaga o ituaiga (ituaiga o latou tau e pa'ū i lalo ole tele. ituaiga i le taimi e tasi). vasega Foo { pa o galuega a le lautele ((A&B)|null $entity) { if ($entity === null) { return null; } toe faafoi $entity; }}
  • O se fa'aopoopoga fou "Random" ua tu'uina mai fa'atasi ai ma galuega ma vasega mo le fa'atupuina o numera fa'ailoga ma fa'asologa. O loʻo tuʻuina atu e le module se atinaʻe e faʻatatau i mea, e mafai ai ona e filifilia masini eseese mo le fausiaina o numera pseudo-random, e aofia ai i latou e talafeagai mo le faʻaogaina i le cryptography, ma tuʻuina atu galuega fesoasoani, mo se faʻataʻitaʻiga, mo le faʻafefiloi faʻafuaseʻi o laina ma manoa, filifili ki laina faʻafuaseʻi, fa'aoga fa'atasi o le tele o afi afi ma lou lava tulaga tuto'atasi. $rng = $is_production ? fou Random\Engine\Secure() : fou Random\Engine\Mt19937(1234); $randomizer = fou Random\Randomizer($rng); $randomizer->shuffleString('foobar');
  • Fa'atinoina le fa'aliliuina o mataupu fa'apitonu'u. O galuega e pei o le strtolower() ma le strtoupper() ua suia nei i taimi uma le mataupu o mataitusi i le vaega ASCII, pei o le setiina o le nofoaga i le "C".
  • Faʻaopoopo galuega fou: mysqli_execute_query, curl_upkeep, memory_reset_peak_usage, ini_parse_quantity, libxml_get_external_entity_loader, sodium_crypto_stream_xchacha20_xor_ic, openssl_cipher_key_length.
  • Faaopoopo auala fou: mysqli::execute_query, ZipArchive::getStreamIndex, ZipArchive::getStreamName, ZipArchive::clearError, ReflectionFunction:: isAnonymous, ReflectionMethod:: hasPrototype.
  • Le mafai ona fa'atupu fa'amalosi mea totino i totonu o se vasega ua fa'agata. I le PHP 9.0, o le mauaina o meatotino e leʻi faʻamalamalamaina muamua i le vasega o le a iʻu ai i se mea sese (ErrorException). Vasega e tu'uina atu __get ma __set metotia mo le fatuina o meatotino, po'o meatotino malosi i le stdClass, o le a fa'aauau pea ona galue e le suia, na'o galuega fa'apitoa ma mea e le o iai o le a lagolagoina e puipuia ai le tagata atia'e mai mea natia. Ina ia faʻasaoina le galuega a le code tuai, o le "#[AllowDynamicProperties]" o loʻo faʻatulagaina, faʻatagaina le faʻaogaina o meatotino faʻamalosi.
  • Le mafai ona suitulaga tau fesuia'i i manoa e fa'aaoga ai fa'amatalaga "${var}" ma le ${(var)}" ua le toe fa'aaogaina. O lo'o fa'atumauina pea le lagolago mo suiga masani "{$var}" ma le "$var". Mo se fa'ata'ita'iga: "Talofa {$world}"; OK "Talofa $world"; OK "Talofa ${world}"; Ua le toe fa'aaogaina: O le fa'aogaina o le ${} i manoa ua le toe fa'aaogaina
  • Fa'ate'aina vaega e mafai ona vala'auina e mafai ona vala'au e ala i le "call_user_func($callable)" ae le lagolagoina le vala'au i le fomu "$callable()": "self::method" "parent::method" "static::method" ["self", "method"] ["parent", "method"] ["static", "method"""][":]metode"", "Bar:"
  • O le error_log_mode faʻatonuga ua faʻaopoopoina i faʻatulagaga, faʻatagaina oe e fuafua le auala avanoa i le log log.

puna: opennet.ru

Faaopoopo i ai se faamatalaga