Maison >développement back-end >tutoriel php >Explication détaillée de l'utilisation de la déclaration de type scalaire en PHP7

Explication détaillée de l'utilisation de la déclaration de type scalaire en PHP7

黄舟
黄舟original
2018-05-14 16:05:262696parcourir

Cet article présente principalement l'utilisation du type scalaire PHP7 declare, et analyse les fonctions, les caractéristiques et les compétences d'utilisation associées du type scalaire declare en PHP7 sous forme d'exemples.

L'exemple de cet article décrit l'utilisation du type scalaire PHP7 declare. Partagez-le avec tout le monde pour référence, les détails sont les suivants :

Afin d'améliorer l'efficacité d'exécution, php7 ajoute la fonctionnalité de déclaration des types scalaires (booléen, virgule flottante, entier, caractère) dans la méthode fonction, évitant ainsi le besoin de Détection du type de données .

php7 prend toujours en charge la détection de type faible, c'est-à-dire que les paramètres formels peuvent toujours être déclarés de la manière originale.

La déclaration scalaire a deux caractéristiques :

Mode de forçage (par défaut) : reflété dans la conversion de type

Mode strict

Déclaration de mode : déclarer(strict_types=1);

La valeur par défaut est 0, et la valeur 1 représente un mode de vérification strict

Paramètres de type pouvant être utilisés :

int-float-bool-string-interfaces-array-callable

agit sur la description du type de valeur de retour du paramètre formel, facultatif

paramètre formel

//强制模式
<?php
/**
 * Created by PhpStorm.
 * User: bee
 * Date: 2016/4/22
 * Time: 10:17
 */
// php7之前申明方式
function type_weak(... $int){
  return array_sum($int);
}
// 强制模式 php7声明方式
//强制模式下会将所有实参转换为整型
function sum(int ... $ints)
{
  //array_sum() 将数组中的所有值的和以整数或浮点数的结果返回。
  print_r($ints);
  echo "<br>";
  return array_sum($ints);
}
echo type_weak(2, &#39;3&#39;,0.11);
echo "<hr>";
echo sum(2, &#39;3&#39;,0.11);

Le diagramme des effets de fonctionnement est le suivant :

//将模式申明为严格模式
<?php
/**
 * Created by PhpStorm.
 * User: bee
 * Date: 2016/4/22
 * Time: 10:17
 */
 //declare 必须在文件首部
declare(strict_types=1);
// 强制模式(默认)
function type_weak(... $int){
  return array_sum($int);
}
// 强制模式
function sum(int ... $ints)
{
  //array_sum() 将数组中的所有值的和以整数或浮点数的结果返回。
  print_r($ints);
  echo "<br>";
  return array_sum($ints);
}
echo type_weak(2, &#39;3&#39;,0.11);
echo "<hr>";
//实参存在字符串与浮点型,报错
echo sum(2, &#39;3&#39;,0.11);

Le diagramme des effets de fonctionnement est le suivant :

Valeur de retour

<?php
/**
 * Created by PhpStorm.
 * User: bee
 * Date: 2016/4/22
 * Time: 10:17
 */
declare(strict_types=0);
// 强制模式(默认)
function type_weak(... $int) :int{
  return array_sum($int);
}
// 强制模式
function sum(int ... $ints) :int
{
  //array_sum() 将数组中的所有值的和以整数或浮点数的结果返回。
  print_r($ints);
  echo "<br>";
  //严格模式下报错
  return array_sum($ints)+0.6;
}
echo type_weak(2, &#39;3&#39;,0.11);
echo "<hr>";
echo sum(2, &#39;3&#39;,0.11);

Le rendu de l'opération est la suivante :

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn