5
A
回答
1
不,因爲它不可能在PHP中。 PHP5類型提示僅適用於函數和方法參數,但不適用於返回類型。
然而,PHP7增加返回類型聲明但是,類似參數類型聲明,他們只能是以下之一:
- 一個類或接口;
self
;- 數組(沒有關於其內容的任何細節);
- callable;
- bool;
- float;
- int;
- 串
如果您使用PHP7,您可以指定只是一個數組或創建一個能夠容納這兩個對象,並使用它作爲返回類型的類。
http://php.net/manual/en/functions.arguments.php#functions.arguments.type-declaration
http://php.net/manual/en/functions.returning-values.php#functions.returning-values.type-declaration
0
這適用於phpstorm(沒有指定的元素順序ofcourse):
/**
* @return Foo[]|Bar[]
*/
3
簡短的回答是沒有。
稍長的答案是,您可以創建自己的Value Object作爲提示,但這意味着您將需要返回一個對象而不是數組。
class Foo {};
class Bar {};
class Baz {
private $foo;
private $bar;
public function __construct(Bar $bar, Foo $foo) {
$this->bar = $bar;
$this->foo = $foo;
}
public function getFoo() : Foo {
return $this->foo;
}
public function getBar() : Bar {
return $this->bar;
}
}
function myFn() : Baz {
return new Baz(new Bar(), new Foo());
}
$myObj = myFn();
var_dump($myObj);
注意:這需要PHP 7以提示返回類型。
相關問題
- 1. PHP類型提示對象數組
- 2. 如何爲對象提供HandleErrorInfo模型?
- 3. 如何在React.CreateClass中爲對象屬性提供流式提示
- 4. PHP類型提示:數組支持,對象不是?
- 5. 提供類型的對象搜索數組
- 6. 提供空對象的PHP類
- 7. 任何對象的類型提示
- 8. 如何將模型數據對象數組轉換爲數據提供者
- 9. 如何提供一個包含數組作爲其屬性的數組中的對象定義的示例
- 10. 如何爲泛型提供對引用類型的約束?
- 11. Django:爲特定模型的「QuerySet」對象提供自定義過濾方法
- 12. 如何爲同一類型的typedefs提供模板特化?
- 13. 如何在Ruby中的塊中提供類/對象方法?
- 14. 根據提供的條件在xml中獲取特定對象
- 15. Flexmock django模型對象爲模型對象提供了什麼?
- 16. PHP類型提示在派生類中
- 17. 如何在php中提供不同類型的用戶角色?
- 18. 提供使用classManifest綁定類型上限的Class對象
- 19. 轉換JSON爲Java對象,提供錯誤的類型枚舉
- 20. 如何確保僅在C++中提供特定的類功能?
- 21. Java:如何確定對象數組中的對象的類型?
- 22. 如何從數組中的對象中提取特定的數據
- 23. 如何僅爲特定的div或類提供背景視頻。
- 24. 如何給類型推理引擎提供一些提示?
- 25. 在PHP 7中鍵入提示 - 對象數組
- 26. 提供了類型數組作爲方法的參數
- 27. DbCommand - 如何提供提供程序特定的屬性
- 28. 如何爲.hdf5類型創建特定類型的對象?
- 29. 具有對象數組作爲數據提供者的Flex DataGridColumn
- 30. 如何從對象數組中提取鍵作爲數組?
「暗示」是什麼意思? –
目前,沒有辦法,雖然有一個[RFC的主題](https://wiki.php.net/rfc/arrayof)被拒絕 –
你有RFC的網址@MarkBaker? – Daan