Testkirina beta ya PHP 8 dest pê kir

Nasandin yekem serbestberdana beta ya şaxê nû yê zimanê bernamenûsê PHP 8. Serbestberdan ji bo 26ê Mijdarê tê plan kirin. Di heman demê de, berdanên rastker ên PHP 7.4.9, 7.3.21 û
7.2.33, ku xeletî û qelsiyên berhevkirî ji holê rakir.

sereke nûbûnên PHP 8:

  • Zivirî Berhevkarê JIT, karanîna wê dê hilberînê çêtir bike.
  • alîkarî argumanên fonksiyonê yên binavkirî, ku dihêle hûn nirxan bi fonksiyonê re têkildar bi navan re derbas bikin, yanî. Hûn dikarin argumanan bi her rêzê derbas bikin û argumanên vebijarkî diyar bikin. Mînakî, "array_fill (destpêk_index: 0, hejmar: 100, nirx: 50)".
  • Dema ku rêbazên bang dikin destûr dan bi karanîna operatorê "?", ku dihêle hûn tenê ger rêbaz hebe ku hûn bangek bidin destpêkirin, ku ji kontrolên nepêwîst ji bo vegerandina nirxa "null" dûr dikeve. Bo nimûne, "$dateAsString = $booking->getStartDate()?->asDateTimeString()";
  • alîkarî cureyên yekîtiyê, danasîna berhevokên du an bêtir celeban (mînak, "fonksiyona giştî foo(Foo|Bar $input): int|float;").
  • alîkarî taybetmendiyên (navdêr) ku destûrê dide te ku hûn metadata (wek mînak agahdariya celeb) bi dersan ve girêdin bêyî ku hevoksaziya Docblock bikar bînin.
  • Piştgiriya îfadeyê wekwî, ku, berevajî guheztinê, dikare nirxan vegerîne, şert û mercên tevlihevkirinê piştgirî bike, berhevokên cûrbecûr ên hişk bikar bîne, û pêdivî bi taybetmendiyek "şikestin" nake.

    $encam = hevgirtin ($ ketin) {
    0 => "silav",
    '1', '2', '3' => "cîhanê",
    };

  • Hevoksaziya kurtkirî pênaseyên sinifê, dihêle hûn pênaseya çêker û taybetmendiyan bi hev re bikin.
  • Tîpa vegerê ya nû - Static.
  • Tîpa nû - mixed, ku dikare were bikar anîn da ku diyar bike ka fonksiyonek pîvanên celebên cûda qebûl dike.
  • Expression avêtin to handle îstîsnayan.
  • WeakMap ji bo afirandina tiştên ku dikarin di dema berhevkirina çopê de bêne qurban kirin (mînakî, hilanîna kaşên nehewce).
  • Fersend bikaranîna îfadeya "::class" ji bo hêmanan (analog bi gazîkirina get_class()).
  • Fersend pênaseyên di bloka girtina îstisnayan de ku bi guherbaran ve girêdayî ne.
  • Fersend piştî hêmana paşîn di navnîşa parametreyên fonksiyonê de kommayek hiştin.
  • Navbera nû Stringable ji bo naskirina cûreyên rêzikan an daneya ku dikare bibe stringek (ji bo ku rêbaza __toString() heye) nas bike.
  • Taybetmendiya nû str_contains(), analogek sadekirî ya strpos ji bo destnîşankirina rûdana binerêzek, û her weha fonksiyonên str_starts_with() û str_ends_with() ji bo kontrolkirina hevberdan li destpêk û dawiya rêzekê.
  • Taybetmendiya zêdekirî fdiv(), ku dema dabeşkirina bi sifirê bêyî ku xeletiyek bavêje operasyonek dabeşkirinê pêk tîne.
  • Guhertin string tevlî mantiqa. Mînakî, îfadeya 'echo "sum:" . $a + $b' berê wekî 'echo ("sum: " . $a) + $b' dihat şîrovekirin, û di PHP 8 de dê wekî 'echo "sum:" were hesibandin. ($a + $b)'.
  • Tightened Ji bo nimûne, biwêjên "[] ​​% [42]" û "$object + 4" dê bibe sedema xeletiyekê.
  • Pêk anîn algorîtmayek birêkûpêk a bi îstîqrar ku tê de rêza nirxên yeksan di nav rêzikên cihêreng de tê parastin.
  • Source: opennet.ru

Add a comment