@return int always return string php
@return int always return string php
我有下一段代码:
/**
* @return int
*/
public function getId()
{
return $this->id;
}
当我使用 apache2 在服务器中执行时,此 return 总是字符串值,但在另一台服务器中使用 nginx return整数值。
这里为什么不一样,配置成nginx或者apache还是php.ini?
我在两个服务器中都有 php7。
拜托,我需要知道为什么会出现这个问题。感谢您的回复。
PHP 评论通常不会影响 运行 时间。在代码中使用注释有一些特殊情况,但类型提示通常不是其中之一。它仅供人类和 IDE 提供有关类型的信息。
所以 原因 它之所以不同是因为无论该值来自何处都使其不同。
您可以强制转换,就像转换一样,将值显式转换为必要的类型return (int) $this->id
。
因为 PHP 7 它 确实 允许您明确指定 return 类型:
public function getId() : int
{
return $this->id;
}
有关详细信息,请参阅文档中的 return type declaration。
我有下一段代码:
/**
* @return int
*/
public function getId()
{
return $this->id;
}
当我使用 apache2 在服务器中执行时,此 return 总是字符串值,但在另一台服务器中使用 nginx return整数值。 这里为什么不一样,配置成nginx或者apache还是php.ini?
我在两个服务器中都有 php7。
拜托,我需要知道为什么会出现这个问题。感谢您的回复。
PHP 评论通常不会影响 运行 时间。在代码中使用注释有一些特殊情况,但类型提示通常不是其中之一。它仅供人类和 IDE 提供有关类型的信息。
所以 原因 它之所以不同是因为无论该值来自何处都使其不同。
您可以强制转换,就像转换一样,将值显式转换为必要的类型return (int) $this->id
。
因为 PHP 7 它 确实 允许您明确指定 return 类型:
public function getId() : int
{
return $this->id;
}
有关详细信息,请参阅文档中的 return type declaration。