>백엔드 개발 >PHP7 >php7.3에서 php7.4까지의 새로운 기능 소개

php7.3에서 php7.4까지의 새로운 기능 소개

coldplay.xixi
coldplay.xixi앞으로
2021-04-02 09:39:403235검색

php7.3에서 php7.4까지의 새로운 기능 소개

1. 이제 개체 속성이 유형 선언을 지원합니다

<?php
class User {
    public int $id;
    public string $name;
}
?>

위의 예에서 $id는 강제로 정수 유형으로 변환되고 $name은 문자열 유형으로 변환됩니다$name为字符串类型

推荐(免费):PHP7

2、箭头函数

现在箭头函数会提供一个短语法用来定义那些在作用域内值申明不明确的函数

<?php
$factor = 10;
$nums = array_map(fn($n) => $n * $factor, [1, 2, 3, 4]);
// $nums = array(10, 20, 30, 40);
?>

3、有限返回类型协方差和参数类型协方差(谷歌翻译的)

下列代码将会运行

<?php
class A {}
class B extends A {}

class Producer {
    public function method(): A {}
}
class ChildProducer extends Producer {
    public function method(): B {}
}
?>

仅当使用自动加载时,才提供完全差异支持。 在单个文件内,只能使用非循环类型引用,因为所有类在被引用之前都必须可用

4、空合并分配运算符

<?php
$array[&#39;key&#39;] ??= computeDefault();
// is roughly equivalent to
if (!isset($array[&#39;key&#39;])) {
    $array[&#39;key&#39;] = computeDefault();
}
?>

5、Unpacking inside arrays(谷歌翻译是 在数组内部解包,看这不对,先用英文吧)

<?php
$parts = [&#39;apple&#39;, &#39;pear&#39;];
$fruits = [&#39;banana&#39;, &#39;orange&#39;, ...$parts, &#39;watermelon&#39;];
// [&#39;banana&#39;, &#39;orange&#39;, &#39;apple&#39;, &#39;pear&#39;, &#39;watermelon&#39;];
?>

6、数值字符分隔符

数字字符可以在数字之间包含下划线。

<?php
6.674_083e-11; // float
299_792_458;   // decimal
0xCAFE_F00D;   // hexadecimal
0b0101_1111;   // binary
?>

7、弱参考(Weak references)

弱参考允许编程人员保留对不能防止被销毁的对象的参考(Weak references allow the programmer to retain a reference to an object that does not prevent the object from being destroyed.)

8、允许__toString()的异常

现在可以通过__toString()

권장(무료): PHP7

2, 화살표 기능 🎜🎜이제 Arrow 함수는 범위 내에서 값 선언이 명확하지 않은 함수를 정의하기 위한 짧은 구문을 제공합니다🎜rrreee🎜3. 제한된 반환 유형 공분산 및 매개변수 유형 공분산(Google 번역)🎜🎜다음 코드가 실행됩니다🎜rrreee🎜 전체 diff 지원 자동 로딩을 사용할 때만 제공됩니다. 단일 파일 내에서는 모든 클래스를 참조하기 전에 사용할 수 있어야 하기 때문에 비순환 유형 참조만 사용할 수 있습니다.🎜🎜4. Null 병합 할당 연산자🎜rrreee🎜5 배열 내부 압축 풀기(Google 번역은 배열 내부 압축 풀기입니다. 틀리면 영어부터 사용하세요)🎜rrreee🎜6. 숫자 구분 기호🎜🎜숫자는 숫자 사이에 밑줄을 포함할 수 있습니다. 🎜rrreee🎜7. 약한 참조 🎜🎜약한 참조를 통해 프로그래머는 개체가 파괴되는 것을 방지하지 않고 개체에 대한 참조를 유지할 수 있습니다.)🎜🎜8 __toString() 예외 허용🎜🎜 이제 __toString()을 통해 예외가 발생할 수 있습니다. 이전 버전에서는 이로 인해 치명적인 오류가 발생했습니다. 문자 치명적인 오류를 일으킬 수 있는 문자열 변환의 기존 오류는 예외를 발생시키도록 변환되었습니다. 🎜🎜나머지 확장팩은 나중에 읽어보겠습니다🎜

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

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제