>백엔드 개발 >PHP 튜토리얼 >php7.0의 새로운 기능 소개

php7.0의 새로운 기능 소개

小云云
小云云원래의
2018-03-29 09:38:581796검색

이 글은 주로 php7.0의 새로운 기능을 소개합니다. 이 글은 주로 코드와 텍스트를 사용하여 여러분에게 도움이 되기를 바랍니다.

1.Scalartype 선언에는 필수(기본값) 모드와 엄격 모드의 두 가지 모드가 있습니다. 문자열(string), 정수(int), 부동 소수점 숫자(float) 및 부울(bool)을 지원합니다.

엄격 모드:

declare(strict_types=1);
function aa(int $a){
    return $a;
}
echo aa('5');//会报错。


강제 모드:

declare(strict_types=0);//默认就是强制
function aa(int $a){
    return $a;
}
echo aa('5');//输出5。

2. 반환 값 유형 선언 메서드 이름(매개변수...): 반환 값 유형 {}

 function aa(int $a) : array{
    return [$a];
}

3. null 병합 연산자

삼항 표현식과 isset()이 일상적으로 동시에 사용되는 상황이 많기 때문에 null 병합 연산자의 구문 설탕을 추가했습니다(??). 변수가 존재하고 해당 값이 NULL이 아니면 자체 값을 반환하고, 그렇지 않으면 두 번째 피연산자를 반환합니다.

// if it does not exist.
$username = $_GET['user'] ?? 'nobody';
// This is equivalent to:
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';


4.太空船操作符(组合比较符)

echo $a <=> $b;//当$a>$b 输出1  当$a < $b 输出-1    当$a == $b 输出0

5.通过 define() 定义常量数组

这个比较好,如下所示:

defined(&#39;ANIMALS&#39;) or define(&#39;ANIMALS&#39;, [
    &#39;dog&#39;,
    &#39;cat&#39;,
    &#39;bird&#39;
]);
var_dump(ANIMALS);//输出array(3) { [0]=> string(3) "dog" [1]=> string(3) "cat" [2]=> string(4) "bird" }

6.匿名类

$a = new class{
public function echo(){
return $this;
}
public function className(){
return __CLASS__;
}
};
var_dump($a->className());
//string(67)"class@anonymousF:\WWW\test\test02.php001A0165"


7.Closure::call()  闭包调用

Closure::call() 现在有着更好的性能,简短干练的暂时绑定一个方法到对象上闭包并调用它。

class A{private $x = 1;}


$getx = function(){
return $this -> x;
};


echo $getx->call(new A); //输出1

相关推荐:

我整理的PHP 7.0主要新特性,php7.0新特性_PHP教程

위 내용은 php7.0의 새로운 기능 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.