프로그래밍 언어/PHP

객체 배열에 대한 PHPDoc 유형

Rateye 2021. 7. 6. 10:33
728x90
반응형

 

질문 : 객체 배열에 대한 PHPDoc 유형 힌트?

따라서 PHPDoc에서 멤버 변수 선언 위에 @var 를 지정하여 해당 유형을 암시 할 수 있습니다. 그런 다음 예를 들어 IDE입니다. PHPEd는 작업중인 객체 유형을 알고 해당 변수에 대한 코드 통찰력을 제공 할 수 있습니다.

<?php
  class Test
  {
    /** @var SomeObj */
    private $someObjInstance;
  }
?>

이것은 나중에 해당 객체를 반복 할 때 적절한 힌트를 얻을 수 있도록 객체 배열에 동일한 작업을 수행해야 할 때까지 훌륭하게 작동합니다.

SomeObj 배열임을 지정하기 위해 PHPDoc 태그를 선언하는 방법이 있습니까? @var 배열은 충분 @var array(SomeObj) 은 유효하지 않은 것 같습니다.

답변

사용하다:

/* @var $objs Test[] */
foreach ($objs as $obj) {
    // Typehinting will occur after typing $obj->
}

인라인 변수를 입력 할 때

class A {
    /** @var Test[] */
    private $items;
}

클래스 속성.

PHPDoc (및 Zend Studio 및 Netbeans와 같은 IDE)에 해당 옵션이 없었던 '09의 이전 답변 :

당신이 할 수있는 최선의 방법은

foreach ($Objs as $Obj)
{
    /* @var $Obj Test */
    // You should be able to get hinting after the preceding line if you type $Obj->
}

Zend Studio에서 많이합니다. 다른 편집자에 대해서는 모르지만 작동해야합니다.

출처 : https://stackoverflow.com/questions/778564/phpdoc-type-hinting-for-array-of-objects
728x90
반응형