php - void函数不能返回void函数?

标签 php

我想知道为什么这是无效的:

Class Foobar
{
    private function foo(): void {
        return;
    }

    public function bar(): void {
        return $this->foo(); // Compile Error: A void function must not return a value
    }

}

我知道 RFC 是这样说的:

A function with a void return type, or void function, may either return implicitly, or have a return statement without a value

但是恕我直言 foo 是无效的,因此应该允许...

最佳答案

$this->foo() 不返回 void,而是返回 null。所以在你的 bar 函数中,你实际上明确地返回了 null,这是不允许的。

关于php - void函数不能返回void函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40996004/

相关文章:

php - 通过 AJAX 将 HTML 发送到服务器端 PHP

PHP Curl http 代码 100 失败

PHP - session 变量的替代方法是什么

php - 如何从 MySQL 数据库加载多个 blob 图像

php - kohana 3 路由在某些情况下失败

php - move_uploaded_file 和 is_uploaded_file 之间的区别

php - 从 mysql 查询中删除最后一个逗号

php - 使用 localhost 作为服务器时在 php 中注册时的电子邮件确认

php - Laravel 和 Xdebug - 由于 fatal error : Can't find Controller class that all controllers extend it,我无法调试

php - Zend Controller 中 url() 辅助函数的等价物