PHP 8 中的数字比较


当我们在 PHP 8 中比较一个数字时,它将使用数字比较。否则它会将数字转换为字符串并使用字符串比较。

字符串可以分为三种方式 -

  • 仅包含数字的字符串。例如 - 1234 或 1.24e1。

  • 前导数字字符串 - 前导字符串以数字字符串开头,但应紧跟非数字字符,包括空白。示例 - 12xyz 或“123”

  • 非数字字符串 - 既不能是数字也不是前导数字字符串的字符串。

Example − PHP 7
0=='foo' // PHP 7 will return true.
Example − PHP 8
0 =='foo' // PHP 8 will return false.

示例 - 使用更理智的字符串到数字比较的 PHP 8 程序。

 在线演示

<?php
   $x=[
      "1" => "first Integer",
      "0123" =>"The integer index with leading 0",
      "12str" =>"using leading numeric string",
      " 1" => "using leading whitespace",
      "2.2" => "using floating number",
   ];
   print_r($x);
?>

输出

Array
(
   [1] => first Integer
   [0123] => The integer index with leading 0
   [12str] => using leading numeric string
   [ 1] => using leading whitespace
   [2.2] => using floating number
)

更新于: 2021 年 4 月 1 日

256 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告