牛牛在线工具

Generator::throw()

收录 8868 个 PHP 函数,含用途说明与用法示例。

Generator::throw()

在生成器中抛出一个异常

函数名:Generator::throw() 适用版本:PHP 5 >= 5.5.0, PHP 7 用法: Generator::throw() 方法用于在生成器中抛出一个异常。它允许在生成器的当前位置抛出异常,并在生成器的控制流中进行异常处理。 语法: public void Generator::throw ( Throwable $exception ) 参数: $exception:必需,要抛出的异常对象,必须是 Throwable 类的实例或其子类的实例。 返回值: 无返回值。 示例: function myGenerator() { yield 1; yield 2; yield 3; } $generator = myGenerator(); foreach ($generator as $value) { try { if ($value == 2) { $generator->throw(new Exception('Value cannot be 2')); } echo $value . " "; } catch (Exception $e) { echo $e->getMessage() . " "; } } 输出: 1 Value cannot be 2 3 解释: 在上面的示例中,我们定义了一个生成器函数 myGenerator(),它会生成数字 1、2 和 3。在 foreach 循环中,当遍历到值为 2 的时候,我们使用 Generator::throw() 方法抛出了一个异常。异常被捕获并输出了异常消息。因此,最终的输出结果是 1 Value cannot be 2 3。