代码之家  ›  专栏  ›  技术社区  ›  IcePops

eclipse+php自动完成/类型提示[重复]

  •  0
  • IcePops  · 技术社区  · 6 年前

    考虑以下PHP5类:

    class SomeClass
    {
        //I want to document this property...
        private $foo;
    
    
        function __construct()
        {
    
        }
    
        public function SetFoo($value)
        {
            $this->foo = $value;
        }
    
        public function GetFoo()
        {
            return $this->foo;
        }
    }
    

    如何在 phpDocumentor 我会记录$foo的财产吗?我甚至不确定是否需要记录,但我想知道如果需要…

    我知道如何记录setfoo()和getfoo(),只是不确定私有属性(变量?).

    谢谢!

    0 回复  |  直到 8 年前
        1
  •  40
  •   Billy ONeal IS4    14 年前
    /**
     * This is what the variable does. The var line contains the type stored in this variable.
     * @var string
     */
    private $foo;
    
        2
  •  17
  •   Pascal MARTIN    14 年前

    我一般至少会用 @var 标记,以指示变量的类型。

    例如:

    /**
     * Some blah blah about what this is useful for
     * @var MyClass $foo
     */
    


    例如,这正是zend framework所做的;请参见 Zend_Layout (引证) :

    class Zend_Layout
    {
        /**
         * Placeholder container for layout variables
         * @var Zend_View_Helper_Placeholder_Container
         */
        protected $_container;
    
        /**
         * Key used to store content from 'default' named response segment
         * @var string
         */
        protected $_contentKey = 'content';
    


    注: @access 标记在php 4中很有用 (当时没有 public / protected / private ) ,但我从不在用php 5编写文档时使用它:使用可见性关键字的代码是自文档的。

        3
  •  0
  •   David    11 年前

    如果你使用一个“获取”和“设置”魔法方法,你可以使用 @property

    /**
      * Description for the class
      * @property type $foo Description for foo
      * @property type $foo Description for bar
      */
     class SomeClass
     {
         private $foo;
         protected $bar;
    
         public function __get(){
             ...
         }
    
         public function __set(){
             ...
         }
     }
    

    更多信息链接:

        4
  •  -1
  •   techraf    8 年前
    /**
     * docstring
     */
    private $foo;
    

    重要提示:应该有 星号。一个也没有。