是否可以写严格类型的PHP代码?
例如,是否可以像这样编写代码:
int $x = 6;
str $y = "hello world";
bool $z = false;
MyObject $foo = new MyObject();
是否可以定义这样的函数:
public int function getBalance()
{
return 555; //Or any numeric value
}
编辑:这个答案适用于PHP 5.6及更早版本。 正如最近的答案中指出的那样,PHP 7.0和更高版本确实对此有所支持
原始答案:
没有。从php5开始支持类型提示,但“类型提示只能是对象和数组(自PHP 5.1起)类型,不支持使用int和string的传统类型提示”。
就目前来说,就像php一样,只要你问我就应该去。
在PHP 7中实现了“标量类型声明”,例如:
public function getBalance(): int {
return 555;
}
你需要声明,你会使用严格的类型:
<?php
declare(strict_types=1);
function sum(int $a, int $b): int {
return $a + $b;
}
sum(1, 2);
?>
更多信息:https://wiki.php.net/rfc/scalar_type_hints_v5
PHP不是严格键入的,所以没有。 也就是说,它的功能支持有限的类型暗示 - 尽可能接近它。
链接地址: http://www.djcxy.com/p/57623.html上一篇: Is it possible to write strictly typed PHP code?
下一篇: How do I check if the request is made via AJAX in CodeIgniter?