草庐IT

setPrimitive-setter

全部标签

php - 通过 setter 进行依赖注入(inject)

Laravel有没有通过方法引入依赖的能力?例如,我有一个Controller实现了DoctrineWorkable接口(interface):interfaceDoctrineWorkable{publicfunctionsetEntityManager(EntityManager$manager);}traitEntityManagerTrait{protected$manager;publicfunctionsetEntityManager(EntityManager$manager){$this->manager=$manager;//Otherworkwith$manager

php - 仅将 PHP setter 用于类型安全是否有意义?

我有一堆域对象,我正在使用重载来获取和设置属性。我的表单过滤器很全面。如果错误类型或值的属性偷偷溜进来,我相信我可以在映射器中找到它们。最坏的情况是数据库抛出一个我可以捕捉到的异常。在这种情况下,我应该担心域对象中的getter和setter吗? 最佳答案 作为最佳实践,在访问数据库之前,您应该始终“捕获你能抓到的东西”。虽然往返行程似乎没什么大不了,但它们很昂贵。必须在服务器上创建对象、管理应用程序池资源等等。在您访问数据库之前,尽您所能进行所有验证,尽管这很乏味。您依赖数据库抛出异常的原因是通过其他形式的访问(例如导入脚本)确保

php - Netbeans PHP getter/setter 自定义

我将Netbeans用于PHP代码。当我将生成器用于类中的getter和setter方法时,这些函数被命名为get_something()set_something()如何生成驼峰式的函数:getSomething()setSomething() 最佳答案 您使用的是什么版本的Netbeans?在6.9中,如果您转到Source->InsertCode->Getter.../Setter...,则会有一个下拉选项用于MethodName。在那里,您可以选择驼峰式大小写或使用下划线。 关于

php - 使用 __call() 而不是 getter 和 setter 是否正确?

关于良好实践的主题,对需要getter和setter的类使用__call()是否正确?参见DoctrineEntity的示例:https://gist.github.com/devmatheus/10668172#file-sessao1-php我知道性能会受到影响,但这会减少编程时间,您怎么看? 最佳答案 如您所说,性能会降低,但更好的设计总是胜过性能。具有更多Ram和CPU的服务器并不像开发人员那样昂贵。如果您需要动态调用的方法,我认为这是一个很好的观点。,但是,它应该通过PHPDoc进行详细记录(它有助于IDE完成代码,开发人

php - 使用 Setter 和 Getter 更改类静态属性的值

我想扩展这个类(我下载的)以满足我自己的需要。当我运行调用此类时,出现错误,提示构造函数中存在意外的=。define("HIT_OLD_AFTER_SECONDS",4*7*24*3600);classPHPCountextendsDatabaseObject{protectedstatic$table_name="hits";protectedstatic$db_fields=array('pageid','isunique','hitcount','english_id');public$pageid;public$isunique;public$hitcount;public$e

PHP getter / setter

我正在尝试学习这个MVCOOP东西,但我偶然发现了一个奇怪的错误:Fatalerror:CalltoundefinedmethodFoo::stuff()in...我的代码:classFooextendsFooBase{static$_instance;private$_stuff;publicfunctiongetStuff($which=false){if($which)returnself::app()->_stuff[$which];elsereturnself::app()->_stuff;}publicfunctionsetStuff($stuff){self::app()

php - 数组上奇怪的 PHP 魔法 setter/getter

我对magicgetter/isset有奇怪的问题。我有定义魔术getter/isset的myObject:private$_data=array();publicfunction__get($name){if(array_key_exists($name,$this->_data))return$this->_data[$name];thrownewException($name.':propertydoesn\'texist.');}publicfunction__isset($name){returnisset($this->_data[$name]);}如果我调用:isset(

PHP-DI injectOn 不注入(inject) setter 方法

我在使用ContainerBuilder配置容器时设置了依赖项和定义,然后编译它以获得实际的Container,但是每当我尝试注入(inject)依赖项时,它们总是倾向于被忽略。我是否错过了injectOn()方法的概念,或者我在这里做错了什么($this->translator仍未分配)?我已经尝试了不同的方法,既实例化类并将对象添加到ContainerBuilder并将其作为\DI\object()定义传递,两者都使用同样的结果。translator=$translator;}publicfunctiontest(){var_dump($this->translator);}}cl

php - Symfony,getters 和 setters 与魔术方法

我不喜欢为我的实体类的每个属性都使用“愚蠢的”getter和setter,因此我正在考虑使用魔术方法来获取/设置这些属性,而不是创建每个单独的getter和setter。这个想法是在逻辑不同于典型的“return$name”或“$this->name=$name”时创建一个特定的getter或setter。此外,这个神奇的方法将在不同的类上创建,每个实体都会扩展它(我没有想太多这一步)无论如何,您如何看待用魔术方法替换getters/setters?它会惩罚太多的表现吗?还有其他我没有考虑到的问题吗? 最佳答案 问题在于,例如sym

PHP Komodo getter/setter 自动生成

Komodo是否像NetBeans或Eclipse一样支持getter/setter自动生成?如果是这样,我该如何使用它?我好像找不到。 最佳答案 这是一个修改/改进的版本,具有更易读的代码。还将从属性声明中删除默认值,如public$prop=array();fromxpcomimportcomponentsimportreviewSvc=components.classes["@activestate.com/koViewService;1"]\.getService(components.interfaces.koIViewS