php中@property的作用? 你没看到他是在注释里面的吗?@property string adminName1是说属性 adminName1 是一个字符串这只是为了帮助理解程序的说明文字 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我在yii框架里面看到的。但是我自己写了一个测试,也可以,如下:<?php/** * @property string adminName1 */class test { private $adminName2; public function setName($pram1,$pram2) { $this->adminName1 = $pram1; $this->adminName2 = $pram2; } public function getName() { return $result = $this->adminName1." ".$this->adminName2; }}$test = new test();$test->setName("admin1", "admin2");echo $test->getName();?>//输出结果:admin1 admin2所以我想php是不是就有这个规则? 已经说了 是为了帮助理解程序的说明文字像你这样一改 /** * @property string adminName1 */就没有说明的意义了,相反还会产生误解明明他说有一个 adminName1 属性,我怎么没看到呀?只看到 adminName2,是不是还要定义一个 adminName1 呀 楼主,我也在找这个问题的答案,回复的几位兄台确实没明白楼主的意思。没google到答案,我个人的理解,这是给IDE看的,@property关键字作为转义,IDE遇到这类注释,自动为其加入属性列表(即使它不存在,你可以按这个格式添加一个不存在的属性试试)。目的是为一些魔术属性变得显式,让调用的开发者更清楚,当然,需要IDE的支持 首先这个标识属性以后,属性还是未被定义,对这些属性的调用最后都是调用__set和__get方法。常见的使用方法是:public function __get($name){ $getter='get'.$name; if(method_exists($this,$getter))return $this->$getter();}最后对这些未定义属性的方法都转换为get/set函数的访问。 php制作图像的问题 php+ajax问题 为什么不能输出SESSION值?? db.inc中的两个函数看不懂,求解释。 下拉列表框中的内容怎么显示不出来?看看我的代码有错吗? 关于phpmyadmin的问题!急!急! 新手求教--在php中带数据库的web网站,对也管理员,和普通用户的权限控制 各位老大,小弟有一初级问题想问…… PHP的含义是什么? 内存满了的情况下,Session存储是怎么办 冒泡算法和快速算法怎样写(用数组)?????? 怎么样阻止不友好的搜索引擎机器人蜘蛛爬虫?
<?php/**
* @property string adminName1
*/class test { private $adminName2;
public function setName($pram1,$pram2) {
$this->adminName1 = $pram1;
$this->adminName2 = $pram2;
}
public function getName() {
return $result = $this->adminName1." ".$this->adminName2;
}
}
$test = new test();
$test->setName("admin1", "admin2");
echo $test->getName();
?>
//输出结果:admin1 admin2所以我想php是不是就有这个规则?
像你这样一改
/**
* @property string adminName1
*/
就没有说明的意义了,相反还会产生误解
明明他说有一个 adminName1 属性,我怎么没看到呀?只看到 adminName2,是不是还要定义一个 adminName1 呀
@property关键字作为转义,IDE遇到这类注释,自动为其加入属性列表(即使它不存在,你可以按这个格式添加一个不存在的属性试试)。目的是为一些魔术属性变得显式,让调用的开发者更清楚,当然,需要IDE的支持
{
$getter='get'.$name;
if(method_exists($this,$getter))return $this->$getter();
}最后对这些未定义属性的方法都转换为get/set函数的访问。