婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP 8新特性簡介

PHP 8新特性簡介

熱門標(biāo)簽:地圖標(biāo)注符號樣式有 菏澤語音外呼系統(tǒng)運營商 廈門400電話辦理選易號網(wǎng) 公司外呼系統(tǒng)中心 電子地圖標(biāo)注怎么修改 臨沂crm外呼系統(tǒng)平臺 梧州市機器人外呼系統(tǒng)怎么樣 天客通地圖標(biāo)注 如何在世界地圖標(biāo)注

PHP 8新特性

新的主要PHP版本PHP 8預(yù)計將于2020年底發(fā)布。它現(xiàn)在處于非常活躍的開發(fā)階段,所以在接下來的幾個月里,事情可能會發(fā)生很大的變化。

在這篇文章中,我將持續(xù)更新預(yù)期的內(nèi)容列表:新特性、性能改進和重大變化。因為PHP 8是一個新的主版本,所以您的代碼被破壞的幾率更高。如果你一直在更新最新的版本,升級應(yīng)該不會太困難,因為大多數(shù)有破壞性的更改在7之前就已經(jīng)廢棄了。*版本。

除了中斷更改之外,PHP 8還帶來了一些不錯的新特性,比如JIT編譯器和union類型;還有更多!

Union types:聯(lián)合類型

考慮到PHP的動態(tài)類型化特性,在很多情況下聯(lián)合類型是有用的。聯(lián)合類型是兩個或多個類型的集合,這些類型表示其中一個可以使用。

public function foo(Foo|Bar $input): int|float;

注意,void永遠不能是union類型的一部分,因為它表示“根本沒有返回值”。此外,可以使用|null來編寫可為空的聯(lián)合,也可以使用現(xiàn)有的?符號:

public function foo(Foo|null $foo): void;

public function bar(?Bar $bar): void;

JIT

即時編譯器承諾顯著的性能改進,盡管并不總是在web請求的上下文中。目前還沒有任何準(zhǔn)確的基準(zhǔn),但它們肯定會到來。

Static return type:靜態(tài)的返回類型

雖然已經(jīng)可以返回self,但靜態(tài)類型直到PHP 8才成為有效的返回類型。考慮到PHP的動態(tài)類型特性,這一特性對許多開發(fā)人員都很有用。

class Foo
{
  public function test(): static
  {
    return new static();
  }
}

Weak maps

在PHP 7.4中添加的weakrefs RFC的基礎(chǔ)上,在PHP 8中添加了WeakMap實現(xiàn)。弱映射包含對對象的引用,這并不會阻止那些對象被垃圾收集。

以orm為例,它們通常實現(xiàn)保存對實體類的引用的緩存,以改進實體之間關(guān)系的性能。這些實體對象不能被垃圾回收,只要這個緩存有一個對它們的引用,即使緩存是唯一引用它們的東西。

如果這個緩存層使用弱引用和映射,那么PHP將在沒有其他對象引用它們時對這些對象進行垃圾收集。尤其是orm,它可以在一個請求中管理數(shù)百個(如果不是數(shù)千個)實體;弱映射為處理這些對象提供了一種更好的、對資源更友好的方法。

下面是弱映射的樣子,一個來自RFC的例子:

class Foo 
{
  private WeakMap $cache;

  public function getSomethingWithCaching(object $obj): object
  {
    return $this->cache[$obj]
      ??= $this->computeSomethingExpensive($obj);
  }
}

::class on objects

一個小而有用的新特性:現(xiàn)在可以在對象上使用::class,而不必在對象上使用get_class()。它的工作方式與get_class()相同。

$foo = new Foo();

var_dump($foo::class);

Stringable interface

Stringable接口可用于鍵入提示任何字符串或?qū)崿F(xiàn)了 tostring()的內(nèi)容。而且,無論何時類實現(xiàn)了 tostring(),它都會在后臺自動實現(xiàn)接口,不需要手動實現(xiàn)。

class Foo
{
  public function __toString(): string
  {
    return 'foo';
  }
}

function bar(Stringable $stringable) { /* … */ }

bar(new Foo());
bar('abc');

從接口創(chuàng)建DateTime對象

您已經(jīng)可以使用DateTime:: createfromimmutabledatetime ($immutableDateTime)從一個datetime對象創(chuàng)建一個DateTime對象,但是另一種方法比較麻煩。通過添加DateTime::createFromInterface()和datetime::createFromInterface(),現(xiàn)在就有了一種將DateTime和datetime對象相互轉(zhuǎn)換的通用方法。

DateTime::createFromInterface(DateTimeInterface $other);

DateTimeImmutable::createFromInterface(DateTimeInterface $other);

重新定義引擎的警告

許多以前只觸發(fā)警告或通知的錯誤現(xiàn)在已經(jīng)轉(zhuǎn)換為正確的錯誤。以下警告已更改。

  • Undefined variable: Error exception instead of notice
  • Undefined array index: warning instead of notice
  • Division by zero: DivisionByZeroError exception instead of warning
  • Attempt to increment/decrement property ‘%s' of non-object: Error exception instead of warning
  • Attempt to modify property ‘%s' of non-object: Error exception instead of warning
  • Attempt to assign property ‘%s' of non-object: Error exception instead of warning
  • Creating default object from empty value: Error exception instead of warning
  • Trying to get property ‘%s' of non-object: warning instead of notice
  • Undefined property: %s::$%s: warning instead of notice
  • Cannot add element to the array as the next element is already occupied: Error exception instead of warning
  • Cannot unset offset in a non-array variable: Error exception instead of warning
  • Cannot use a scalar value as an array: Error exception instead of warning
  • Only arrays and Traversables can be unpacked: TypeError exception instead of warning
  • Invalid argument supplied for foreach(): TypeError exception instead of warning
  • Illegal offset type: TypeError exception instead of warning
  • Illegal offset type in isset or empty: TypeError exception instead of warning
  • Illegal offset type in unset: TypeError exception instead of warning
  • Array to string conversion: warning instead of notice
  • Resource ID#%d used as offset, casting to integer (%d): warning instead of notice
  • String offset cast occurred: warning instead of notice
  • Uninitialized string offset: %d: warning instead of notice
  • Cannot assign an empty string to a string offset: Error exception instead of warning

以上就是PHP 8新特性簡介的詳細內(nèi)容,更多關(guān)于php 8新特性的資料請關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • 簡述PHP7.4 新特性和廢棄的功能
  • php7新特性的理解和比較總結(jié)
  • PHP5.5新特性之yield理解與用法實例分析
  • php7函數(shù),聲明,返回值等新特性介紹
  • PHP新特性之字節(jié)碼緩存和內(nèi)置服務(wù)器
  • PHP新特性詳解之命名空間、性狀與生成器
  • PHP7新特性簡述
  • php 7新特性之類型申明詳解
  • 聊聊 PHP 8 新特性 Attributes

標(biāo)簽:郴州 貴陽 雞西 白城 黃石 瀘州 迪慶 綿陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP 8新特性簡介》,本文關(guān)鍵詞  PHP,新特性,新,特性,簡介,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP 8新特性簡介》相關(guān)的同類信息!
  • 本頁收集關(guān)于PHP 8新特性簡介的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲欧美另类图片小说| 欧美视频精品在线| 日本欧美在线看| 亚洲激情一二三区| 亚洲精品va在线观看| 一区二区三区资源| 亚洲精品日产精品乱码不卡| 欧美国产1区2区| 久久久久久久综合| 欧美日韩视频在线观看一区二区三区 | 天堂久久一区二区三区| 国产精品第四页| 久久精品一区二区三区av| 久久夜色精品国产欧美乱极品| 欧美一级淫片007| 91精品国产一区二区三区香蕉| 欧美精品色综合| 在线不卡中文字幕| 欧美一级精品大片| 日韩精品一区在线| 精品福利视频一区二区三区| 欧美成人一区二区三区在线观看| 欧美成人vps| 国产欧美日韩麻豆91| 中文在线一区二区| 自拍偷拍欧美激情| 亚洲国产中文字幕| 日日夜夜免费精品| 激情亚洲综合在线| 日韩中文字幕一区二区三区| 亚洲成人精品影院| 性久久久久久久久久久久| 一个色妞综合视频在线观看| 中文字幕在线一区| 国产精品久久久久婷婷二区次| 国产欧美日韩在线看| 国产精品久久久久久久久搜平片 | 日韩二区在线观看| 免费三级欧美电影| 国产激情精品久久久第一区二区 | 一区二区国产盗摄色噜噜| 午夜久久久久久电影| 久久99精品国产麻豆婷婷| 成人免费视频一区二区| 欧美午夜精品免费| wwwwxxxxx欧美| 一区二区三区日韩欧美精品| 蜜桃传媒麻豆第一区在线观看| 成人av资源下载| 欧美精品粉嫩高潮一区二区| 日本一区二区三区在线观看| 亚洲一卡二卡三卡四卡无卡久久 | 久久精品亚洲乱码伦伦中文 | 欧美伦理视频网站| 久久精品视频在线看| 亚洲一二三四区| 国产一区二区日韩精品| 色偷偷88欧美精品久久久| 日韩欧美国产高清| 亚洲自拍偷拍综合| 国产精品一二三四五| 欧美日韩激情在线| 国产精品久久久久久户外露出| 蜜臀av性久久久久蜜臀av麻豆| 91老师片黄在线观看| 精品国产123| 日本不卡一区二区三区 | 亚洲欧洲精品天堂一级| 日本不卡不码高清免费观看| 色综合久久久久久久久久久| 国产三级欧美三级| 激情图区综合网| 欧美日韩五月天| 亚洲色图视频网| av不卡在线观看| 欧美激情一区二区三区全黄| 男人的天堂亚洲一区| 欧美日韩综合色| 亚洲综合色噜噜狠狠| 色综合天天综合| 国产精品麻豆视频| 国产精品 日产精品 欧美精品| 日韩一二三四区| 日本一区中文字幕| 欧美少妇性性性| 亚洲第一会所有码转帖| 欧美日韩一区中文字幕| 亚洲午夜免费电影| 欧美中文字幕一区二区三区亚洲| 综合电影一区二区三区| 99精品热视频| 亚洲视频中文字幕| 在线观看亚洲a| 亚洲国产精品久久一线不卡| 欧美人妖巨大在线| 精品一区二区三区在线观看国产| 欧美在线你懂的| 美腿丝袜亚洲一区| 欧美视频在线一区二区三区| 亚洲精品视频在线观看网站| 成人av免费在线播放| 久久精品一区四区| 国产一区二区在线视频| 26uuu亚洲婷婷狠狠天堂| 日本欧美一区二区三区乱码| 91精品在线麻豆| 日本欧美久久久久免费播放网| 欧美高清性hdvideosex| 香蕉加勒比综合久久| 欧美色网一区二区| 亚洲影视在线观看| 欧美日韩国产综合一区二区| 亚洲电影中文字幕在线观看| 欧美蜜桃一区二区三区| 亚洲大片精品永久免费| 欧美中文字幕一二三区视频| 亚洲国产日韩一级| 欧美肥胖老妇做爰| 成人污污视频在线观看| 亚洲国产综合色| 国产日韩欧美精品在线| 国产成人av影院| 亚洲色图视频网站| 8x8x8国产精品| 裸体在线国模精品偷拍| 欧美一区二区三区在线| 国产一区二区影院| 亚洲欧美日韩人成在线播放| 欧美日韩一区二区三区在线看| 日韩av午夜在线观看| 久久久精品影视| 97久久超碰精品国产| 亚洲午夜三级在线| 国产精品毛片大码女人| 精品999在线播放| 欧美日韩在线观看一区二区| 成人美女视频在线看| 蜜臀av性久久久久蜜臀aⅴ流畅 | 国产午夜一区二区三区| 欧美日韩精品系列| 97精品电影院| 国产在线精品一区二区夜色 | 在线不卡中文字幕播放| 99视频国产精品| 极品美女销魂一区二区三区免费 | 欧美精品123区| 91免费观看视频| 粉嫩绯色av一区二区在线观看 | 欧美大片在线观看一区| 欧洲一区二区三区免费视频| 大白屁股一区二区视频| 精品一区免费av| 激情综合网天天干| 日韩激情中文字幕| 亚洲成a人片在线不卡一二三区| 中文字幕在线不卡视频| 国产精品电影一区二区| 国产午夜精品一区二区三区嫩草| 精品88久久久久88久久久| 日韩欧美在线一区二区三区| 制服丝袜一区二区三区| 欧美性大战久久久| 欧美亚洲国产一区二区三区va| 色播五月激情综合网| 日本高清不卡在线观看| 欧美无人高清视频在线观看| 日本国产一区二区| 欧美吻胸吃奶大尺度电影 | 欧美日韩精品是欧美日韩精品| 欧美性受xxxx黑人xyx| 欧美亚洲动漫精品| 欧美日韩精品一区二区三区四区| 在线免费观看视频一区| 欧美日韩国产bt| 欧美一级一区二区| 久久一二三国产| 中文欧美字幕免费| 自拍偷拍国产亚洲| 亚洲福利一二三区| 麻豆精品视频在线| 国产风韵犹存在线视精品| 成人免费视频网站在线观看| 91福利国产精品| 欧美一区二区三区免费大片| 精品精品国产高清a毛片牛牛| 国产欧美视频一区二区| 亚洲色图视频免费播放| 午夜精品一区二区三区三上悠亚| 日本欧美韩国一区三区| 国产在线观看免费一区| 一本大道久久a久久精二百| 91精品国产综合久久蜜臀 | 懂色av一区二区夜夜嗨| 91国偷自产一区二区三区成为亚洲经典| 欧美在线观看一二区| 日韩欧美美女一区二区三区| 国产精品视频一二三区| 午夜影院在线观看欧美| 国产精品影视在线观看| 欧美视频一区二区三区在线观看|