作者 | Deepak Vohra

译者 | 明知山

策划 | 丁晓昀

本文是 php 8.x 系列文章的一部分。你可以通过订阅 RSS 来接收有关本系列文章的更新通知。

PHP 仍然是互联网上使用最广泛的脚本语言之一,w3tech 的数据显示,有 77.3% 使用服务器端编程语言的网站都在使用它。PHP 8 带来了许多新特性和改进,我们将在本系列文章中进行探讨。

PHP 8.3 是 PHP 8.x 系列最新的主要更新版本。

除了性能改进之外,它还带来了许多新特性,包括修正了在 PHP 8.1 中引入的 readonly 特性;显式类型化的类常量;一个新的用于标记覆盖超类方法的 #[Override] 属性,等等。

环境设置

下载并安装 PHP 8.3 二进制文件。在本系列前几篇文章中,我们使用了 windows 操作系统。为了与此保持一致,请下载并安装 PHP 8.3 Windows 二进制文件。按照 PHP 7——入门及面向对象编程改进中的说明来设置环境。最后,在命令行运行 php –version 验证 PHP 版本是否为 8.3。

新的 increment 和 decrement 运算符

PHP 8.3 引入了新的增减函数 str_increment(string $string) 和 str_decrement(string $string),它们通过加减 1 来实现对参数的增减操作。换句话说,$v++ 等同于 $v += 1,$v– 等同于 $v -= 1。

对于以下任一情况,函数将抛出 ValueError:

  • $string 为空字符串;
  • $string 不是由字母和数字 ASCII 字符组成。

另外,如果字符串无法执行减操作,str_decrement 函数会抛出 ValueError。例如,“A”或“0”无法再减。对非字母数字字符串的增减操作已被弃用。可以被表示为科学记数法的数字字符串不执行类型转换。

在下面的示例脚本中,str_increment(string $string) 函数调用将对一个字母数字字符串的值进行增操作。str_decrement(string $string) 函数将对字母数字字符串的值进行减操作。脚本还演示了函数的参数必须是字母数字字符串,否则将抛出 ValueError:

$str = “1”;$str = str_decrement($str);echovar_dump($str);

$str = “-1”;$str = str_decrement($str);echovar_dump($str); ?>

运行脚本,得到以下输出:

string(1) “2”string(1) “0”Uncaught ValueError: str_decrement: Argument #1 ($string) must be composed only of alphanumeric ASCII characters …

对bool类型的增减操作不会有任何效果,但会生成警告。同样,对空字符串的增减操作已被弃用。此外需要注意的是,增减非数字字符串都没有效果,并已被弃用。作为演示,请运行以下脚本:

———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,永久会员只需109元,全站资源免费下载 点击查看详情
站 长 微 信: nanadh666

声明:1、本内容转载于网络,版权归原作者所有!2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。3、本内容若侵犯到你的版权利益,请联系我们,会尽快给予删除处理!