PHP 8 เจฆเฉ€ เจฌเฉ€เจŸเจพ เจŸเฉˆเจธเจŸเจฟเฉฐเจ— เจธเจผเฉเจฐเฉ‚ เจนเฉ‹ เจ—เจˆ เจนเฉˆ

เจชเฉ‡เจธเจผ เจ•เฉ€เจคเจพ PHP 8 เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพ เจฆเฉ€ เจจเจตเฉ€เจ‚ เจธเจผเจพเจ–เจพ เจฆเฉ€ เจชเจนเจฟเจฒเฉ€ เจฌเฉ€เจŸเจพ เจฐเฉ€เจฒเฉ€เจœเจผ 26 เจจเจตเฉฐเจฌเจฐ เจจเฉ‚เฉฐ เจคเจนเจฟ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆเฅค เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚, PHP 7.4.9, 7.3.21 เจ…เจคเฉ‡ เจฆเฉ‡ เจธเฉเจงเจพเจฐเจพเจคเจฎเจ• เจฐเฉ€เจฒเฉ€เจœเจผ
7.2.33, เจœเจฟเจธ เจจเฉ‡ เจธเฉฐเจšเจฟเจค เจ—เจฒเจคเฉ€เจ†เจ‚ เจ…เจคเฉ‡ เจ•เจฎเจœเจผเฉ‹เจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ–เจคเจฎ เจ•เฉ€เจคเจพเฅค

เจฎเฉเฉฑเจ– เจจเจตเฉ€เจจเจคเจพเจตเจพเจ‚ PHP 8:

  • เจชเจพเจตเจฐ เจ…เจช เจœเฉ‡เจ†เจˆเจŸเฉ€ เจ•เฉฐเจชเจพเจˆเจฒเจฐ, เจœเจฟเจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ‰เจคเจชเจพเจฆเจ•เจคเจพ เจตเจฟเฉฑเจš เจธเฉเจงเจพเจฐ เจ•เจฐเฉ‡เจ—เฉ€เฅค
  • เจธเจชเฉ‹เจฐเจŸ เจจเจพเจฎเจฟเจค เจซเฉฐเจ•เจธเจผเจจ เจ†เจฐเจ—เฉ‚เจฎเฉˆเจ‚เจŸเจธ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจจเจพเจฎเจพเจ‚ เจฆเฉ‡ เจธเจฌเฉฐเจง เจตเจฟเฉฑเจš เจซเฉฐเจ•เจธเจผเจจ เจจเฉ‚เฉฐ เจฎเฉเฉฑเจฒ เจชเจพเจธ เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ. เจคเฉเจธเฉ€เจ‚ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจ•เฉเจฐเจฎ เจตเจฟเฉฑเจš เจ†เจฐเจ—เฉ‚เจฎเฉˆเจ‚เจŸเจธ เจชเจพเจธ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจตเจฟเจ•เจฒเจชเจฟเจ• เจ†เจฐเจ—เฉ‚เจฎเฉˆเจ‚เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, "เจเจฐเฉ‡_เจซเจฟเจฒ(เจธเจŸเจพเจฐเจŸ_เจ‡เฉฐเจกเฉˆเจ•เจธ: 0, เจจเฉฐเจฌเจฐ: 100, เจฎเฉเฉฑเจฒ: 50)"เฅค
  • เจ•เจพเจฒ เจ•เจฐเจจ เจฆเฉ‡ เจขเฉฐเจ— เจ†เจ—เจฟเจ† เจนเฉˆ "?" เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เจพเจฒ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ เจœเฉ‡เจ•เจฐ เจตเจฟเจงเฉ€ เจฎเฉŒเจœเฉ‚เจฆ เจนเฉˆ, เจœเฉ‹ "เจจเจฒ" เจฎเฉเฉฑเจฒ เจจเฉ‚เฉฐ เจตเจพเจชเจธ เจ•เจฐเจจ เจฒเจˆ เจฌเฉ‡เจฒเฉ‹เฉœเฉ€ เจœเจพเจ‚เจšเจพเจ‚ เจคเฉ‹เจ‚ เจฌเจšเจฆเจพ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, "$dateAsString = $booking->getStartDate()?->asDateTimeString()";
  • เจธเจชเฉ‹เจฐเจŸ เจฏเฉ‚เจจเฉ€เจ…เจจ เจ•เจฟเจธเจฎ, เจฆเฉ‹ เจœเจพเจ‚ เจฆเฉ‹ เจคเฉ‹เจ‚ เจตเฉฑเจง เจ•เจฟเจธเจฎเจพเจ‚ เจฆเฉ‡ เจธเฉฐเจ—เฉเจฐเจนเจฟ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจจเจพ (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, โ€œเจชเจฌเจฒเจฟเจ• เจซเฉฐเจ•เจธเจผเจจ foo(Foo|Bar $input): int|float;โ€)เฅค
  • เจธเจชเฉ‹เจฐเจŸ เจ—เฉเจฃ (เจเจจเฉ‹เจŸเฉ‡เจธเจผเจจ) เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฎเฉˆเจŸเจพเจกเฉ‡เจŸเจพ (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ•เจฟเจธเจฎ เจฆเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€) เจจเฉ‚เฉฐ Docblock เจธเฉฐเจŸเฉˆเจ•เจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจ•เจฒเจพเจธเจพเจ‚ เจจเจพเจฒ เจœเฉ‹เฉœเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจเฅค
  • เจธเจฎเฉ€เจ•เจฐเจจ เจธเจฎเจฐเจฅเจจ เจฎเฉˆเจš, เจœเฉ‹, เจธเจตเจฟเฉฑเจš เจฆเฉ‡ เจ‰เจฒเจŸ, เจฎเฉเฉฑเจฒ เจตเจพเจชเจธ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ, เจธเฉฐเจฏเฉ‹เจœเจจ เจฆเฉ€เจ†เจ‚ เจธเจฅเจฟเจคเฉ€เจ†เจ‚ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ, เจธเจ–เจค เจ•เจฟเจธเจฎ เจฆเฉ€เจ†เจ‚ เจคเฉเจฒเจจเจพเจตเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ "เจฌเฉเจฐเฉ‡เจ•" เจจเจฟเจฐเจงเจพเจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค

    $เจจเจคเฉ€เจœเจพ = เจฎเฉˆเจš($เจ‡เจจเจชเฉเจŸ) {
    0 => "เจนเฉˆเจฒเฉ‹",
    '1', '2', '3' => "เจธเฉฐเจธเจพเจฐ",
    };

  • เจ›เฉ‹เจŸเจพ เจธเฉฐเจŸเฉˆเจ•เจธ เจ•เจฒเจพเจธ เจชเจฐเจฟเจญเจพเจธเจผเจพเจตเจพเจ‚, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เฉฐเจธเจŸเจฐเจ•เจŸเจฐ เจ…เจคเฉ‡ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจฆเฉ€ เจชเจฐเจฟเจญเจพเจธเจผเจพ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเฉ€เจ†เจ‚ เจนเจจเฅค
  • เจจเจตเฉ€เจ‚ เจตเจพเจชเจธเฉ€ เจ•เจฟเจธเจฎ - เจธเจฅเจฟเจฐ.
  • เจจเจตเฉ€เจ‚ เจ•เจฟเจธเจฎ - เจฎเจฟเจ•เจธเจก, เจœเจฟเจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ‡เจน เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจ เจฒเจˆ เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆ เจ•เจฟ เจ•เฉ€ เจ•เฉ‹เจˆ เจซเฉฐเจ•เจธเจผเจจ เจตเฉฑเจ–-เจตเฉฑเจ– เจ•เจฟเจธเจฎเจพเจ‚ เจฆเฉ‡ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
  • เจธเจฎเฉ€เจ•เจฐเจจ เจธเฉเฉฑเจŸ เจ…เจชเจตเจพเจฆ เจจเฉ‚เฉฐ เจธเฉฐเจญเจพเจฒเจฃ เจฒเจˆ.
  • เจ•เจฎเจœเจผเฉ‹เจฐ เจจเจ•เจธเจผเจพ เจตเจธเจคเฉ‚เจ†เจ‚ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจœเฉ‹ เจ•เฉ‚เฉœเจพ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจ เจฆเฉŒเจฐเจพเจจ เจ•เฉเจฐเจฌเจพเจจ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจ (เจ‰เจฆเจพเจนเจฐเจฃ เจตเจœเฉ‹เจ‚, เจฌเฉ‡เจฒเฉ‹เฉœเฉ‡ เจ•เฉˆเจšเจพเจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจฒเจˆ)เฅค
  • เจฎเฉŒเจ•เจพ เจตเจธเจคเฉ‚เจ†เจ‚ เจฒเจˆ เจธเจฎเฉ€เจ•เจฐเจจ "::class" เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ (get_class() เจจเฉ‚เฉฐ เจ•เจพเจฒ เจ•เจฐเจจ เจฆเฉ‡ เจธเจฎเจพเจจ)เฅค
  • เจฎเฉŒเจ•เจพ เจ…เจชเจตเจพเจฆเจพเจ‚ เจฆเฉ‡ เจ•เฉˆเจš เจฌเจฒเจพเจ• เจตเจฟเฉฑเจš เจชเจฐเจฟเจญเจพเจธเจผเจพเจตเจพเจ‚ เจœเฉ‹ เจตเฉ‡เจฐเฉ€เจเจฌเจฒเจพเจ‚ เจจเจพเจฒ เจฌเฉฐเจจเฉเจนเฉ‡ เจจเจนเฉ€เจ‚ เจนเจจเฅค
  • เจฎเฉŒเจ•เจพ เจซเฉฐเจ•เจธเจผเจจ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจตเจฟเฉฑเจš เจ†เจ–เจฐเฉ€ เจคเฉฑเจค เจฆเฉ‡ เจฌเจพเจ…เจฆ เจ‡เฉฑเจ• เจ•เฉŒเจฎเจพ เจ›เฉฑเจกเจฃเจพเฅค
  • เจจเจตเจพเจ‚ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจธเจŸเฉเจฐเจฟเฉฐเจ—เฉ‡เจฌเจฒ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจธเจŸเฉเจฐเจฟเฉฐเจ— เจ•เจฟเจธเจฎ เจœเจพเจ‚ เจกเฉ‡เจŸเจพ เจฆเฉ€ เจชเจ›เจพเจฃ เจ•เจฐเจจ เจฒเจˆ เจœเฉ‹ เจ‡เฉฑเจ• เจธเจŸเฉเจฐเจฟเฉฐเจ— เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ (เจœเจฟเจธ เจฒเจˆ __toString() เจตเจฟเจงเฉ€ เจ‰เจชเจฒเจฌเจง เจนเฉˆ)เฅค
  • เจจเจตเฉ€เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ str_contains(), เจ‡เฉฑเจ• เจธเจฌเจธเจŸเฉเจฐเจฟเฉฐเจ— เจฆเฉ€ เจฎเฉŒเจœเฉ‚เจฆเจ—เฉ€ เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจจ เจฒเจˆ strpos เจฆเจพ เจ‡เฉฑเจ• เจธเจฐเจฒ เจเจจเจพเจฒเจพเจ—, เจจเจพเจฒ เจนเฉ€ เจ‡เฉฑเจ• เจธเจคเจฐ เจฆเฉ‡ เจธเจผเฉเจฐเฉ‚ เจ…เจคเฉ‡ เจ…เฉฐเจค เจตเจฟเฉฑเจš เจฎเฉˆเจšเจพเจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจจ เจฒเจˆ เจซเฉฐเจ•เจธเจผเจจเจพเจ‚ str_starts_with() เจ…เจคเฉ‡ str_ends_with()เฅค
  • เจซเฉฐเจ•เจธเจผเจจ เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ† fdiv(), เจœเฉ‹ เจœเจผเฉ€เจฐเฉ‹ เจจเจพเจฒ เจตเฉฐเจกเจฃ เจตเฉ‡เจฒเฉ‡ เจ•เฉ‹เจˆ เจ—เจฒเจคเฉ€ เจธเฉเฉฑเจŸเฉ‡ เจฌเจฟเจจเจพเจ‚ เจ‡เฉฑเจ• เจตเฉฐเจก เจ•เจพเจฐเจตเจพเจˆ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
  • เจฌเจฆเจฒเจฟเจ† เจธเจคเจฐ เจœเฉ‹เฉœเจจ เจฆเจพ เจคเจฐเจ•เฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจธเจฎเฉ€เจ•เจฐเจจ 'echo "sum:"เฅค $a + $b' เจจเฉ‚เฉฐ เจชเจนเจฟเจฒเจพเจ‚ 'echo ("sum: ". $a) + $b' เจตเจœเฉ‹เจ‚ เจธเจฎเจเจฟเจ† เจœเจพเจ‚เจฆเจพ เจธเฉ€, เจ…เจคเฉ‡ PHP เจตเจฟเฉฑเจš 8 เจจเฉ‚เฉฐ 'echo "sum:" เจฎเฉฐเจจเจฟเจ† เจœเจพเจตเฉ‡เจ—เจพเฅค ($a + $b)'เฅค
  • เจ•เฉฑเจธเจฟเจ† เจ…เฉฐเจ•เจ—เจฃเจฟเจค เจ…เจคเฉ‡ เจฌเจฟเฉฑเจŸ เจ“เจชเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจจเจพ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจธเจฎเฉ€เจ•เจฐเจจ "[] % [42]" เจ…เจคเฉ‡ "$object + 4" เจฆเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚ เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจนเฉ‹เจตเฉ‡เจ—เฉ€เฅค
  • เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจ‡เฉฑเจ• เจธเจฅเจฟเจฐ เจ›เจพเจ‚เจŸเฉ€ เจ•เจฐเจจ เจตเจพเจฒเจพ เจเจฒเจ—เฉ‹เจฐเจฟเจฆเจฎ เจœเจฟเจธ เจตเจฟเฉฑเจš เจตเฉฑเจ–-เจตเฉฑเจ– เจฆเฉŒเฉœเจพเจ‚ เจตเจฟเฉฑเจš เจ‡เฉฑเจ•เฉ‹ เจœเจฟเจนเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจฆเจพ เจ•เฉเจฐเจฎ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจฐเฉฑเจ–เจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค
  • เจธเจฐเฉ‹เจค: opennet.ru

DDoS เจธเฉเจฐเฉฑเจ–เจฟเจ†, VPS VDS เจธเจฐเจตเจฐเจพเจ‚ เจตเจพเจฒเฉ€เจ†เจ‚ เจธเจพเจˆเจŸเจพเจ‚ เจฒเจˆ เจญเจฐเฉ‹เจธเฉ‡เจฏเฉ‹เจ— เจนเฉ‹เจธเจŸเจฟเฉฐเจ— เจ–เจฐเฉ€เจฆเฉ‹ ๐Ÿ”ฅ DDoS เจธเฉเจฐเฉฑเจ–เจฟเจ†, VPS VDS เจธเจฐเจตเจฐเจพเจ‚ เจจเจพเจฒ เจญเจฐเฉ‹เจธเฉ‡เจฏเฉ‹เจ— เจตเฉˆเฉฑเจฌเจธเจพเจˆเจŸ เจนเฉ‹เจธเจŸเจฟเฉฐเจ— เจ–เจฐเฉ€เจฆเฉ‹ | ProHoster