Yii 属性
PHP中的类成员变量也被称为 属性 。它们表示类实例的状态。Yii引入了一个称为 yii\base\Object 的类。它支持通过 getter 或 setter 类方法定义属性。
getter方法以 get 开头。setter方法以 set 开头。您可以像使用类成员变量一样使用由getter和setter定义的属性。
当读取属性时,将调用getter方法。当分配属性时,将调用setter方法。如果未定义setter,由getter定义的属性为 只读 。
步骤1 - 在components文件夹中创建一个名为 Taxi.php 的文件。
<?php
namespace app\components;
use yii\base\Object;
class Taxi extends Object {
private _phone;
public function getPhone() {
returnthis->_phone;
}
public function setPhone(value) {this->_phone = trim($value);
}
}
?>
在上面的代码中,我们定义了从Object类派生的Taxi类。我们设置了一个getter – getPhone() 和一个setter – setPhone() 。
步骤2 - 现在 ,在 SiteController 中添加一个 actionProperties 方法。
public function actionProperties() {
object = new Taxi();
// equivalent tophone = object->getPhone();phone = object->phone;
var_dump(phone);
// equivalent to object->setLabel('abc');object->phone = '79005448877';
var_dump($object);
}
在上面的函数中,我们创建了一个Taxi对象,尝试通过getter访问 phone 属性,并通过setter设置 phone 属性。
步骤3 - 在您的Web浏览器中,键入 http://localhost:8080/index.php?r=site/properties ,在地址栏中,您应该看到以下输出。