Heim  >  Artikel  >  Backend-Entwicklung  >  Was sind die Unterschiede zwischen PHP7 und PHP5?

Was sind die Unterschiede zwischen PHP7 und PHP5?

醉折花枝作酒筹
醉折花枝作酒筹nach vorne
2021-05-18 09:37:302274Durchsuche

Dieser Artikel stellt Ihnen den Unterschied zwischen PHP7 und PHP5 vor. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Was sind die Unterschiede zwischen PHP7 und PHP5?

1. PHP-Skalartyp- und Rückgabetyp-Deklaration

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

3. Kombinationsbudget-Operator

$site = isset($_GET['site']) ? $_GET['site'] : 'wo';
#简写成
$site = $_GET['site'] ??'wo';

5. Anonyme Klasse

// 整型比较
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. Die Die Methode „Closure::call()“ wurde hinzugefügt, was bedeutet, dass eine anonyme Funktion an die Klasse CSPRNG (Pseudozufallszahlengenerator) gebunden wird.

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

print(sites[1]);

8, Ausnahme

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("我的第一条日志");

9, Use-Anweisungsänderungen

<?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); 
?>

10, Sitzungsoptionen

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

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

random_int() - 加密生存被保护的伪随机整数。

11, PHP 7 entfernte Erweiterungen

PHP 7 异常用于向下兼容及增强旧的assert()函数。

Warum ist die Leistung von PHP7 im Vergleich zu PHP5 verbessert?

1. Variable Speicherbytes werden reduziert, wodurch die Speicherauslastung reduziert und die variable Operationsgeschwindigkeit verbessert wird.

2. Die Array-Struktur wird verbessert und der CPU-Cache verbessert. Trefferquote

3. Der Funktionsaufrufmechanismus wurde verbessert, einige Anweisungen wurden reduziert und die Ausführungseffizienz verbessert:

php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas sind die Unterschiede zwischen PHP7 und PHP5?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen