如果没有安装 readline 扩展,使用
    -a 选项现在将导致错误。在之前,如果没有 readline 扩展的话 -a
    与直接无参数调用 php 的表现一样,除了额外显示一行
    "Interactive mode enabled" 消息。这个模式非交互模式。
   
phpdbg 的远程功能已经被移除。
在 foreach、var_dump() 、序列化()、对象对比等场景中属性的顺序发生了改变。 现在,属性将根据它们的声明与继承进行排序,在基类中声明的属性将排在子类属性之前。
    这个顺序与 zend_object 结构中属性的内部布局保持一致,并且重复了
    default_properties_table[]和 properties_info_table[] 
    中的顺序。旧的顺序没有被记录下来,是由类的继承实现细节造成的。
   
    FILTER_VALIDATE_INT 过滤器的 FILTER_FLAG_ALLOW_OCTAL
    标识现在接受带八进制前缀("0o"/"0O")的八进制字符串。
   
    所有的 GMP 函数现在接受带八进制前缀(
    "0o"/"0O")的八进制字符串。
   
    带着 PDO::ATTR_SERVER_INFO 和
    PDO::ATTR_SERVER_VERSION 常量的
    PDO::getAttribute()
    方法现在返回的是值而不是抛出 PDOException 异常。
   
ReflectionProperty::setAccessible() 和 ReflectionMethod::setAccessible() 将不再起作用。属性和方法现在总被认为是能够通过反射访问的。
syslog() 现在是二进制安全的。
    imagewebp() 现在可以通过传递 IMG_WEBP_LOSSLESS
    作为质量来实现无损的 WebP 编码了。
   
这个常量只有在所使用的 libgd 支持无损 WebP 编码的情况在才会被定义。
在连接 libmysqlclient 时,mysqli_stmt::next_result() 和 mysqli::fetch_all() 现在可以使用了。
OpenSSL 扩展 现在至少需要 OpenSSL 1.0.2 版本。
现在已经支持 OpenSSL 3.0 了。请注意许多密码算法(部分老的提供者)不再是默认启用的,以及参数校验(例如:最小秘钥长度)比以前更加严格了。
现在签名的默认算法为 SHA256。
签名算法增加了对 OpenSSL_SHA256 和 OpenSSL_SHA512 的支持。
为安全协议增加了对 SHA256 和 SHA512 的支持。
    --with-password-argon2 现在使用 pkg-config 来检测
    libargon2。因此现在应该使用 PKG_CONFIG_PATH
    来修改 libargon2 的位置。
   
INI 配置项 log_errors_max_len 已经被移除。从 PHP 8.0.0 开始将不再起作用。
     一个在引用字符串中的前置美元符号现在可以被转义:"\${"
     将会被解释为内容包含 ${ 的字符串。
    
     双引号内的字符串中反斜线现在被更一致地视为转义字符。之前 "foo\\"
     的后面如果是除换行之外的其他字符是不被视为一个终止字符串的。现在,它被解释成一个内容为
     foo\的字符串。然而有一个例外的地方是后面跟着换行符的字符串 "foo\"
     将继续被视为一个有效的、内容为 "foo\" 的字符串,而不是一个还没有结束的字符串。这个例外的存在是为了天然支持 Windows 文件路径的使用,如
     "C:\foo\"。