Tôi muốn thử khai báo loại trả về của PHP 7 (Tôi đang sử dụng PHP 7RC3 trên các cửa sổ cho mục đích này).Khai báo loại trả về PHP 7 - lỗi chết người
muốn bắt đầu với một cái gì đó rất đơn giản:
function getme() : integer
{
return 434;
}
echo getme();
nhưng điều này mang lại cho tôi một lỗi nghiêm trọng:
Fatal error: Uncaught TypeError: Return value of getme() must be an instance of integer, integer returned
sau đó tôi cũng đã cố gắng để cast giá trị trả về, nhưng return (integer) 434;
hoặc return (int) 434;
cho tôi cùng một lỗi;
cuối cùng tôi cũng đã cố gắng:
function getme() : integer
{
$i = 434;
return (integer) $i;
}
echo getme();
với kết quả tương tự.
tôi đang làm gì sai?
hoặc tôi đã hiểu nhầm điều gì ở đây?
cảm ơn mọi lời giải thích và trợ giúp!
CẬP NHẬT
đây là lý do tại sao tôi nghĩ rằng tôi đã phải sử dụng integer
thay vì int
(đặc biệt lưu ý đến Toby Allen):
từ https://wiki.php.net/rfc/return_types:
Examples of Invalid Use (...)
// Int is not a valid type declaration
function answer(): int {
return 42;
}
answer();
Nó tìm kiếm một lớp có tên 'integer', không phải là một số. – melpomene
@melpomene cảm ơn, đó là những gì tôi bằng cách nào đó nghĩ quá, bởi vì nó hy vọng một 'dụ của số nguyên' –
Chắc chắn phải có mức độ cơ bản của tài liệu trên trang web tài liệu php 7? –