问题标签 [magic-methods]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - CakePHP 控制器中的 __call() 函数?
__call()
CakePHP 的控制器中是否有可用的功能?我在 Zend Framework 中使用了这个函数。
我收到这样的错误:
用户控制器中缺少方法
对于 URL site.com/users/somemethodsnotincontoller
php - __toString 问题
我正在构建一个小的 MVC 系统(学习),并且在我的视图文件中显示变量时遇到了一些问题。
这是来自我的视图类:
这是来自我的控制器:
和视图文件(name_view)
我究竟做错了什么?也许我不得不做一些全球性的事情?
THX / 托拜厄斯
编辑:我刚刚在包含视图文件之前提取了视图类中的 vars 数组,然后它就起作用了。谢谢您的所有帮助。
python - 使用 __setstate__ 和 __getstate__ 的简单示例
我不知道__setstate__
and __getstate__
方法是做什么的,所以帮我举一个简单的例子。
apache-flex - 如何在 PHP 域对象中使用 getter 和 setter 并使用 Zend_Amf 正确传输它们
我刚开始使用Zend_Amf
,到目前为止,我对它从 Flash 向服务器发送对象感到非常满意。将我的对象从服务器发送回我的 Flash 环境让我有点头疼。我的 PHP 对象主要包含具有自定义 getter 和 setter 方法的私有属性。我如何Zend_Amf
知道这些属性?当将对象从服务器发送回 PHP 时,它只是尝试。有这样的注释@property
吗?非常感谢任何帮助,现在我将尝试将对象转换为stdClass
具有$_ecplicitType
值的实例。
c# - C# 4.0 - 在动态对象上调用受保护的方法是否调用 TryInvokeMember()?
在 C# 4.0 中,有一个新的 DynamicObject。
它提供了一个“神奇的方法” TryInvokeMember() ,当尝试调用不存在的方法时会调用该方法。
我想知道的是 TryInvokeMember() 在尝试从定义类外部调用受保护的方法时是否被调用。
我将这种行为与 PHP 进行了对比,在这种情况下,它确实调用了其等效的“魔术方法”__call()。
php - 如何使 __set 也适用于 PHP 中的静态操作?
当我打电话时self::$parameter = 1;
不__set
叫。
有没有办法解决?
php - php:在某些情况下避免__get?
我有一堂课,我正在使用__set
. 因为我不希望它设置任何东西,所以我有一个经过批准的变量数组,它会在实际设置类属性之前对其进行检查。
但是,在构造时,我希望该__construct
方法设置几个类属性,其中一些不在批准的列表中。因此,当构造发生时,$this->var = $value
我当然会得到我不允许设置该变量的异常。
我能以某种方式解决这个问题吗?
python - 获取创建的对象将被赋予的属性名称
在我问这个之前,请注意:我想要这个用于调试目的。我知道这将是一些糟糕的黑魔法,但我只想在调试期间使用它,这样我就可以更容易地识别我的对象。
就像这样。我有一些来自类的对象,A
它创建了一些B
实例作为属性:
我想要的是B.__init__
,它会找出"vanilla_b"
它被赋予的属性名称或任何属性名称,然后将其作为.name
这个特定的属性B
。
然后在调试时,当我看到一些B
物体漂浮在周围时,我可以知道它是哪一个。
有没有办法做到这一点?
php - 使用带有 2D 数组的魔法 __set() 方法
如果我有以下注册表类:
是否有更简单的方法将新项目推送到“arr”数组中?这段代码:'array[] = item' 不适用于魔法设置方法,我在谷歌上找不到任何有用的信息。谢谢你的时间!
python - 为什么 Python 使用“魔术方法”?
我最近一直在玩 Python,我发现有点奇怪的是“魔术方法”的广泛使用,例如,为了使其长度可用,一个对象实现一个方法,def __len__(self)
然后在什么时候调用它你写len(obj)
。
我只是想知道为什么对象不简单地定义一个len(self)
方法并将它作为对象的成员直接调用,例如obj.len()
?我确信 Python 这样做肯定有充分的理由,但作为一个新手,我还没有弄清楚它们是什么。