> 백엔드 개발 > PHP7 > php7과 php5의 차이점은 무엇입니까?

php7과 php5의 차이점은 무엇입니까?

醉折花枝作酒筹
풀어 주다: 2023-02-17 22:24:01
앞으로
2353명이 탐색했습니다.

이 글에서는 php7과 php5의 차이점을 소개하겠습니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

php7과 php5의 차이점은 무엇입니까?

1.PHP 스칼라 유형 및 반환 유형 선언

#主要分为两种模式,强制性模式和严格模式
declare(strict_types=1)
#1表示严格类型校验模式,作用于函数调用和返回语句;0表示弱类型校验模式。
로그인 후 복사

2.NULL 병합 연산자

$site = isset($_GET['site']) ? $_GET['site'] : 'wo';
#简写成
$site = $_GET['site'] ??'wo';
로그인 후 복사

4. 상수 배열

// 整型比较
print( 1 <=> 1);print(PHP_EOL);
print( 1 <=> 2);print(PHP_EOL);
print( 2 <=> 1);print(PHP_EOL);
print(PHP_EOL); // PHP_EOL 为换行符
//结果:
0
-1
1
로그인 후 복사

6. Closure::call() 메소드가 추가되었습니다. 이는 익명 함수를 클래스

// 使用 define 函数来定义数组
define(&#39;sites&#39;, [
   &#39;Google&#39;,
   &#39;Jser&#39;,
   &#39;Taobao&#39;
]);

print(sites[1]);
로그인 후 복사

7에 바인딩하는 것을 의미합니다. CSPRNG(의사 난수 생성기).

interface Logger { 
   public function log(string $msg); 
} 

class Application { 
   private $logger; 

   public function getLogger(): Logger { 
      return $this->logger; 
   } 

   public function setLogger(Logger $logger) { 
      $this->logger = $logger; 
   }   
} 

$app = new Application; 
// 使用 new class 创建匿名类 
$app->setLogger(new class implements Logger { 
   public function log(string $msg) { 
      print($msg); 
   } 
}); 

$app->getLogger()->log("我的第一条日志");
로그인 후 복사

8, Exception

<?php 
class A { 
    private $x = 1; 
} 

// PHP 7 之前版本定义闭包函数代码 
$getXCB = function() { 
    return $this->x; 
}; 

// 闭包函数绑定到类 A 上 
$getX = $getXCB->bindTo(new A, &#39;A&#39;);  

echo $getX(); 
print(PHP_EOL); 

// PHP 7+ 代码 
$getX = function() { 
    return $this->x; 
}; 
echo $getX->call(new A); 
?>
로그인 후 복사

9, 사용 문 변경

PHP 7 通过引入几个 CSPRNG 函数提供一种简单的机制来生成密码学上强壮的随机数。

random_bytes() - 加密生存被保护的伪随机字符串。

random_int() - 加密生存被保护的伪随机整数。
로그인 후 복사

10, 세션 옵션

PHP 7 异常用于向下兼容及增强旧的assert()函数。
로그인 후 복사

11, PHP 7에서 확장 기능 제거

#可以导入同一个namespace下的类简写
use some\namespace\{ClassA, ClassB, ClassC as C};
로그인 후 복사

PHP7의 성능이 PHP5에 비해 향상된 이유는 무엇입니까?

1. 가변 저장 바이트가 줄어들어 메모리 사용량이 줄어들고 가변 작업 속도가 향상됩니다.

2. 배열 구조를 개선하여 배열 요소와 해시 매핑 테이블을 동일한 메모리에 할당하여 메모리 사용량을 줄이고 CPU 캐시를 향상시킵니다. 적중률

3. 매개변수 전송 프로세스를 최적화하여 일부 명령이 줄어들고 실행 효율성이 향상되었습니다.

php 동영상 튜토리얼

위 내용은 php7과 php5의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿