怎么使用PHP7的期望

php7期望是向后兼容的增强到旧 assert()函数。期望允许在生产代码零成本的断言,并提供在断言失败时抛出自定义异常的能力。assert() 不是一种语言构建体,其中第一个参数是一个表达式的比较字符串布尔值用于测试。

配置指令assert()

指示 默认值 可能的值
zend.assertions 1

1 \- 生成并执行代码(开发模式)

0 \- 生成代码,但在运行时跳过它

-1 \- 不生成代码(生产模式)

assert.exception 0

1 \- 当断言失败时抛出异常提供的对象,或者在没有提供异常的情况下抛出一个新的 AssertionError 对象。

0 \- 如上所述使用或生成Throwable,但仅生成基于该对象的警告而不是抛出它(与PHP 5行为兼容)

参数:

  • 断言 – 断言。 在PHP 5中,它必须是要评估的字符串或要测试的布尔值。在PHP 7中,这也可以是任何返回值的表达式,该值将被执行并且结果用于指示断言是成功还是失败。

  • 描述 – 如果断言失败,则将包含在失败消息中的可选描述。

  • 异常 – 在PHP 7中,第二个参数可以是 Throwable 对象而不是描述性字符串,在这种情况下,如果断言失败并且启用了 assert.exception 配置指令,则这是将要抛出的对象。

返回值

如果断言是假的则返回FALSE , 反之则返回TRUE

实例:

<?php
   ini_set('assert.exception', 1);

   class CustomError extends AssertionError {}

   assert(false, new CustomError('Custom Error Message!'));
?>

它产生以下浏览器输出:

Fatal error: Uncaught CustomError: Custom Error Message! in...

原创文章,作者:ESXCJ,如若转载,请注明出处:http://www.wangzhanshi.com/n/9741.html

(0)
ESXCJ的头像ESXCJ
上一篇 2025年1月1日 16:49:49
下一篇 2025年1月1日 16:49:51

相关推荐

  • php7比php5快的原因

    PHP7距正式发布以及有挺长时间了,刚出道就号称比旧版本快了几倍,各种开源框架或系统运行在PHP7上速度效率提高了几倍。那么php7为什么比php5快? PHP7比 PHP5性能高…

    php 2025年1月1日
  • apache 支持 php5 的配置方法

    1.下载apache安装包,并执行安装。 2.下载php5的zip包,并解压到c:\php 3.修改apache的配置文件httpd.conf,添加以下: #load t…

    php 2025年1月2日
  • php7新功能有哪些

    PHP7 是最令人期待的,是 PHP 编程语言的主要功能。PHP7 是在2015年12月3日发布的,被誉为可以开发和交付移动到企业和云端的 Web 应用程序的革命。 PHP7 新功…

    php 2025年1月1日
  • php使用swoole实现TCP服务

    这里以在Yii框架下示例 一:swoole配置TCP ‘swoole’ => [ // 日志文件路径 ‘log_file’ => ‘@console/log/swool…

    php 2024年12月17日
  • Deep Module深模块之软件设计实例分析

    1,模块化设计 在模块设计中,软件系统被分解为相对独立的模块集合。模块的形式多种多样,可以是类、子系统、或服务等。在理想的世界中,每个模块都完全独立于其它模块:开发者在任何模块中工…

    2025年1月2日
  • php基础教程

    php简介 当前网络技术发展日新月异,各种基于服务端创建动态网站的脚本语言更是层出不穷。其中PHP以其简单、易用、可移植性强等特点,在众多的动态网站语言技术中独树一帜。那么到底什么…

    php 2024年12月17日
  • php7 mysql如何扩展安装

    php mysql安装方法:首先下载mysql扩展;然后解压并使用phpize工具初始化;接着进行configure,并执行“make && make instal…

    2025年1月1日
  • PHP操作ZipArchive实现文件上传下载功能

    概述 在很多实际生产场景都需要批量上传、下载一些文件的处理,整理了使用PHP语言操作ZipArchive实践和实例,ZipArchive需要服务器上安装zlib库,php扩展中安装…

    php 2024年12月17日
  • PHP7中的伪随机数产生器CSPRNG怎么用

    CSPRNG 即伪随机数产生器,作为一个工具,常用的算法有 MD5 或者 SHA1 等。 在 PHP7 中,引入了以下两个 CSPRNG 函数,通过跨平台方式生成加密安全的整数和字…

    php 2025年1月1日
  • 一文详解php中.env实现原理

    在PHP中,.env文件是一种常见的配置文件格式,用于存储应用程序的环境变量。它的实现原理如下: 读取文件:PHP代码会读取项目根目录下的.env文件。通常使用file_get_c…

    php 2024年12月17日

发表回复

登录后才能评论