【问题标题】:Scalar and Return type declarations can be used at the same time?标量和返回类型声明可以同时使用吗?
【发布时间】:2019-08-29 23:09:19
【问题描述】:

我正在使用 PHP 7 及更高版本中的新功能编写一个 PHP 类。所以,

  1. 我可以同时使用标量和返回类型声明吗?
  2. 如果是,同时使用它们是一种好习惯还是应该避免?可以举例说明吗?

这是我的类的一个简单示例结构:

declare(strict_types=1);

class ExampleClass {
    public function exampleMethod(int $a, int $b): int {
        return $a + $b;
    }
}

【问题讨论】:

  • 1) 为什么你不能?你试过了吗? 2)关于“良好实践”的问题往往是固执己见的,因此它们与 SO 无关
  • 1) 我试过了,没有任何错误/警告。没关系。 2)我不知道哪个是最好的方法。这就是为什么我想听听你的意见。如果您提供一些意见,我可以自己走。
  • 这不是这个网站的目的。您正在寻找一个讨论网站;这是一个问答网站,理想情况下,Qs 是具体的编程问题。例如。 “这是我的代码,为什么第 23 行做 X 而不是 Y。”见stackoverflow.com/help/on-topic

标签: php class oop php-7


【解决方案1】:

是的,你可以同时使用标量和返回类型声明,这些是 PHP7 中引入的新特性。

您在文件顶部声明了declare(strict_types=1);,这意味着:

这意味着标量输入的严格性是在每个文件的基础上配置的。该指令不仅影响参数的类型声明,还影响函数的返回类型

更多详情,请查看PHP Manual

另外,检查类型声明PHP Manual Type Declaration

【讨论】:

  • 你能分享你对第二个问题的个人想法吗?
猜你喜欢
  • 2016-09-25
  • 2023-03-26
  • 2016-05-11
  • 2017-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-18
相关资源
最近更新 更多