Ua hoʻomaka ka hoʻāʻo Beta o PHP 8

Waiho ʻia e первый бета-выпуск новой ветки языка программирования PHP 8. Релиз намечен на 26 ноября. Одновременно сформированы корректирующие выпуски PHP 7.4.9, 7.3.21 и
7.2.33, в которых устранены накопившиеся ошибки и уязвимости.

ka papa kuhikuhiE nā mea hou PHP 8:

  • Kaʻaila JIT mea hoʻopili, ʻo ka hoʻohana ʻana ia mea e hoʻomaikaʻi i ka huahana.
  • kākoʻo именованных аргументов функций, позволяющих передававать в функцию значения в привязке к именам, т.е. можно передавать аргументы в произвольном порядке и определять необязательные аргументы. Например, «array_fill(start_index: 0, num: 100, value: 50)».
  • При вызове методов ʻae ʻia применение оператора «?», который позволяет инициировать вызов только, если метод присутствует, что позволяет избежать лишних проверок на возврат значения «null». Например, «$dateAsString = $booking->getStartDate()?->asDateTimeString()»;
  • kākoʻo ʻano uniona, wehewehe ʻana i nā hōʻiliʻili o ʻelua a ʻoi aku paha nā ʻano (no ka laʻana, “ka hana lehulehu foo(Foo|Bar $input): int|float;”).
  • kākoʻo ʻano ʻano (annotations) hiki iā ʻoe ke hoʻopaʻa i nā metadata (e like me ke ʻano ʻike) i nā papa me ka hoʻohana ʻole ʻana i ka syntax Docblock.
  • Поддержка выражений ń, которые в отличие от switch могут возвращать значения, поддерживают комбинирование условий, используют строгое сравнение типов и не требуют указания «break».

    $result = match($input) {
    0 => «hello»,
    ‘1’, ‘2’, ‘3’ => «world»,
    };

  • ʻO ka syntax pōkole wehewehe papa, hiki iā ʻoe ke hoʻohui i ka wehewehe ʻana o kahi mea kūkulu hale a me nā waiwai.
  • ʻAno hoʻihoʻi hou - kūpaʻa.
  • ʻAno hou - hui, hiki ke hoʻohana no ka hoʻoholo ʻana inā ʻae kekahi hana i nā ʻāpana o nā ʻano like ʻole.
  • Hōʻike hoolei e mālama i nā mea ʻokoʻa.
  • WeakMap e hana i nā mea i hiki ke kaumaha ʻia i ka wā o ka ʻohi ʻōpala (no ka laʻana, e mālama i nā hūnā pono ʻole).
  • He wā kūpono e hoʻohana ana i ka huaʻōlelo "::class" no nā mea (e like me ke kāhea ʻana get_class ()).
  • He wā kūpono nā wehewehe i loko o ka pahu hopu o nā ʻokoʻa i pili ʻole i nā mea hoʻololi.
  • He wā kūpono e waiho ana i kahi koma ma hope o ka mea hope ma ka papa inoa o nā ʻāpana hana.
  • Pākuʻi hou Hiki ke kaula e ʻike i nā ʻano kaula a i ʻole nā ​​​​ʻikepili i hiki ke hoʻololi ʻia i kahi kaula (no ka mea e loaʻa ai ke ala __toString()).
  • Hōʻailona hou str_contains(), he analogue maʻalahi o nā strpos no ka hoʻoholo ʻana i ke ʻano o kahi substring, a me nā hana str_starts_with() a me str_ends_with() no ka nānā ʻana i nā pāʻani ma ka hoʻomaka a me ka hopena o kahi kaula.
  • Hana hou fdiv(), e hana ana i ka hana mahele me ka hoolei hewa ole i ka puunaue ana me ka ole.
  • Hoʻololi ka hoʻohui ʻana i ke kaula. No ka laʻana, ka ʻōlelo 'echo "sum:" . ʻO $a + $b' ua unuhi mua ʻia ʻo 'echo ("sum: " . $a) + $b', a ma PHP 8 e mālama ʻia ʻo 'echo "sum: " . ($a + $b)'.
  • Hoʻopaʻa ʻia ke nānā ʻana i nā hana helu a me nā bit, no ka laʻana, ʻo nā huaʻōlelo "[] % [42]" a me "$object + 4" e hopena i kahi hewa.
  • Hoʻokō ʻia kahi algorithm sorting paʻa kahi e mālama ʻia ai ke ʻano o nā waiwai like ma nā ʻano holo like ʻole.
  • Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka