首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >php注释中的@var是什么意思

php注释中的@var是什么意思
EN

Stack Overflow用户
提问于 2012-08-28 20:13:47
回答 6查看 33.9K关注 0票数 24

我在php评论中经常看到这个(@var),完全不知道它是什么意思。请告诉我。

代码语言:javascript
运行
复制
// example.php (taken from yii framework application code)

<?php
/* @var $this CategoriesController */
/* @var $data Categories */
?>

<div class="view">

    <b><?php echo CHtml::encode($data->getAttributeLabel('idCategory')); ?>:</b>
    <?php echo CHtml::link(CHtml::encode($data->idCategory), array('view', 'id'=>$data->idCategory)); ?>
    <br />
</div>
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-08-28 20:16:52

您可以使用@var标记来记录类变量的数据类型。

数据类型应该是有效的PHP类型(int、string、bool等)、对象类型的类名或简单的"mixed“。phpDocumentor将显示未修改的可选描述,如果数据类型不存在,则默认为“mixed

https://manual.phpdoc.org/HTMLSmartyConverter/PHP/phpDocumentor/tutorial_tags.var.pkg.html

使用@var标记可以记录类属性的类型和函数。当提供时,它必须包含一个类型来指示预期的内容;另一方面,描述是可选的,但建议在复杂结构的情况下使用,例如关联数组。@var标记可以有多行描述,并且不需要显式分隔。

建议在记录时对每个属性使用此标记。

此标记在PHPDoc中的每个属性中只能出现一次,并且仅限于类型为property的结构元素。

示例:

代码语言:javascript
运行
复制
class DemoVar
{
   /**
    * Summary
    *
    * @var object Description
    */
   protected $varWithDescriptions;

   /**
    * @var \DemoVar $instance The class instance.
    */
   protected static $instance;

   /**
    * Summary for varWithWrongType
    *
    * @var boolean The varWithWrongType. Boolean will be put in the type.
    */
   protected $varWithWrongType = array();
}
票数 23
EN

Stack Overflow用户

发布于 2012-08-28 20:15:58

它们是PHPdoc注释,通常用于IDE类型的提示/代码完成(有时也会生成文档,但不是在这个场景中)。它们与应用程序本身无关,可以毫不费力地删除。

票数 8
EN

Stack Overflow用户

发布于 2012-08-28 20:16:50

它在内联类型提示中。

例如:

代码语言:javascript
运行
复制
/* @var bool */
$switch

在本例中,它表示$this的类型为CategoriesController,而$data的类型为Categories

通常由IDE用于类型提示。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12158987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档