草庐IT

Getters-Setter

全部标签

php - 为什么要为 doctrine2 类使用 getter setter

为什么我们一般对doctrine2类使用gettersetter来保存和获取数据?如下所示:id;}publicfunctiongetName(){return$this->name;}publicfunctionsetName($name){$this->name=$name;}}如果我们公开类属性,我们可以在没有gettersetter的情况下保存数据。不是吗? 最佳答案 您不能对延迟加载元素所需的属性创建代理调用。这是Doctrine经常使用的工具。Getter和setter通常比属性更灵活。如果getter和setter的开

php - setter php 中的类型提示与类型转换

在php中,我想知道以下是否在功能上是等价的?classFoo{public$bar;...publicfunctionsetBar($bar){$this->bar=(array)$bar;}}classFoo{public$bar;...publicfunctionsetBar(array$bar){$this->bar=$bar;}}两者中哪一个被认为是最佳实践?两者都做有意义吗?:classFoo{public$bar;...publicfunctionsetBar(array$bar){$this->bar=(array)$bar;}} 最佳答案

php - Enterprise Architect 中的魔术 getter 和 setter

我正在使用EnterpriseArchitect制作UML类图并使用它生成PHP5代码。使用this,可以为一个属性创建getter和setter,在代码中看起来像这样(只显示相关行):private$id;publicfunctiongetId(){return$this->id;}/****@paramnewVal*/publicfunctionsetId($newVal){$this->id=$newVal;}我想使用魔术方法__get($property)和__set($property,$value)而不是为每个属性使用单独的方法。这可能吗?如果可能的话,怎么办?它可能看起来

PHP:什么是 Getter 和 Setter?

什么是PHP5中的getter和setter?谁能给我一个很好的例子和解释? 最佳答案 这是OOP中数据隐藏(或封装)的概念。例如,如果你想在你的类(class)中拥有某个属性,让我们说“金额”并让你类(class)的客户选择更改或提取其值(value)你应该将你的变量“金额”设为私有(private)(对于那些使用你的人不可见类)并生成两个方法,一个getter和一个setter来操纵你的值(它们是公共(public)的)。原因是能够在设置或获取您的值之前验证数据或对其进行操作。这是一个简短的例子:classtest{privat

php - 对象关系映射 : What's the best way to implement getters?

当我调用$user->get_email_address()时会发生什么?选项1:按需从数据库中提取电子邮件地址publicfunctionget_email_address(){if(!$this->email_address){$this->read_from_database('email_address');}return$this->email_address;}选项2:在创建对象时从数据库中提取电子邮件地址(和其他用户属性)publicfunction__construct(...,$id=0){if($id){$this->load_all_data_from_db($i

php - 动态使用 setter 和 getter 的 symfony Doctrine

我正在使用symfony和doctrine。服务器获取URL/company/{id}的HTTPPATCH请求,其中包含模型的属性及其值,如{"name":"Mynewname"}新值需要持久化到数据库中。$request=Request::createFromGlobals();$requestContentJSON=$request->getContent();$requestContentObj=json_decode($requestContentJSON);$repository=$this->getDoctrine()->getRepository('MyBundle:Co

PHP getter/setter 到数组

跟随“问题”具有很多属性的PHP类。很多Getters/Setter。有什么好的解决方案可以将所有属性转换为数组吗?protected$name;protected$date;publicfunctiongetName();publicfunctiongetDate();publicfunctionasArray();//callallgetters? 最佳答案 您的API是否已经定义并且您是否坚持使用getX和setX方法?我更喜欢属性。输入更少,属性和方法之间的区别更好,生成的代码看起来更像PHP而不是Java。但是公开属性并不

PHP DateTime 时区 - 构造函数与 Setter 方法

当使用PHPDateTime类并尝试设置DateTimeZone时,我会根据设置方式得到不同的结果:使用DateTime::__construct或使用DateTime::setTimezone方法。这是一个例子:$date='2014-08-01'$dateTimeOne=newDateTime($date,newDateTimeZone('America/Los_Angeles'));echo$dateTimeOne->format('Y-m-d\TH:i:sP');//2014-08-01T00:00:00-07:00$dateTimeTwo=newDateTime($date)

java - 配置 IntelliJ getter 和 setter 代码生成

这个问题在这里已经有了答案:Howsetprefix(e.g."m")toremoveinAndroidStudio'sAlt-Insertgetter/setter?(2个答案)Intellij(Androidstudio)membervariableprefix(5个答案)关闭6年前。我习惯于定义带有前缀“m”的私有(private)成员变量。示例:privatebooleanmDone;getter/setter通常看起来像这样:publicbooleangetDone()}returnmDone;}publicvoidsetDone(booleandone){mDone=don

java - 如何覆盖 Mockito 中的 setter 方法?

我似乎无法弄清楚如何使用Mockito模拟一个简单的setter方法。我有以下类(class):classMyClass{privateSomeObjectsomeObject;publicvoidsetSomeObject(SomeObjectsomeObject){this.someObject=someObject;}publicsomeObjectgetSomeObject(){returnsomeObject;}}现在我只想在调用“setSomeObject”时设置一个新的“SomeObject”实例。setter中的参数也应该被忽略。我需要这样的东西:MyClassmock