国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 語(yǔ)言 > JavaScript > 正文

PHP7新特性簡(jiǎn)述

2024-05-06 15:16:05
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

類型聲明

看代碼,一目了然了。

class person{  public function age(int $age) : string  {    return 'Age is ' . $age;  }}

命名空間與use關(guān)鍵字批量聲明

非混合模式

use Publishers/Packt/{ Book, Ebook, Video};use function Publishers/Packt/{ getBook, saveBook };use const Publishers/Packt/{ COUNT, KEY };

混合模式

use Publishers/Packt/{  Book,  Ebook,  Video,  function getBook,  function saveBook,  const COUNT,  const KEY};

復(fù)合模式

use Publishers/Packt/{  Paper/Book,  Electronic/Ebook,  Media/Video};

匿名類

匿名類的聲明與使用時(shí)同時(shí)進(jìn)行的,具備其他類所具備的所以功能,區(qū)別在于匿名類沒(méi)有類名。語(yǔ)法如下:

new class(argument) { definition };

匿名類是沒(méi)有類名的,但在PHP內(nèi)部,會(huì)在內(nèi)存的引用地址表中為其分配一個(gè)全局唯一的名稱。

$name = new class('You') {  public function __construct($name)  {    echo $name;  }};

匿名類可以繼承父類及父類的方法。

class Packt{  protected $number;  public function __construct()  {    echo 'parent construct';  }  public function getNumber() : float  {    return $this->number;  }}$number = new class(5) extends Packt{  public function __construct(float $number)  {    parent::__construct();    $this->number = $number;  }};echo $number->getNumber();

匿名類可以繼承接口。

interface Publishers{  public function __construct(string name, string address);  public function getName();  public function getAddress();}class packt{  protected $number;  protected $name;  protected $address;  public function ...}$info = new class('name', 'address') extends Packt implement Publishers{  public function __construct(string $name, string $address)  {    $this->name = $name;    $this->address = $address;  }  public function getName() : string  {    return $this->name;  }  public function getAddress() : string  {    return $this->address;  }}echo $info->getName() . ' ' . $info->getAddress();

匿名類可以嵌套在一個(gè)類中使用。

class Math{  public $first_number = 10;  public $second_number = 10;  public function add() : float  {    return $this->first_number + $this->second_number;  }  public function mutiply_sum()  {    return new class() extends Math    {      public function mutiply(float $third_number) : float      {        return $this->add() * $third_number;      }    };  }}$math = new Math();echo $math->mutiply_sum()->mutiply(2);

摒棄老式構(gòu)造函數(shù)

從PHP4開(kāi)始,構(gòu)造函數(shù)可以通過(guò)命名與類名一致的方式來(lái)聲明自己是構(gòu)造函數(shù),在PHP7中這種方式聲明構(gòu)造函數(shù)依然可以使用,但不推薦使用,會(huì)輸出不推薦的信息 Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; Packt has a deprecated constructor in ...,PHP7中推薦使用 __construct()。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 巴塘县| 铜陵市| 日照市| 富锦市| 郓城县| 连州市| 鸡泽县| 武山县| 修武县| 漠河县| 桂阳县| 黄山市| 德清县| 金乡县| 靖西县| 武隆县| 阿瓦提县| 讷河市| 灯塔市| 北川| 灵川县| 于都县| 凤山市| 德保县| 汉中市| 莲花县| 绥德县| 印江| 永丰县| 进贤县| 饶平县| 麻城市| 六盘水市| 元氏县| 方山县| 涞源县| 雅江县| 淳安县| 永年县| 永兴县| 贡觉县|