PHP 中静态属性的神奇 __get getter

2024-02-09

public static function __get($value)

不起作用,即使它起作用,碰巧我已经需要神奇的 __get getter 作为同一个类中的实例属性。

这可能是一个是或否的问题,那么,有可能吗?


不,这是不可能的。

引用__get 的手册页 http://php.net/manual/en/language.oop5.overloading.php#language.oop5.overloading.members :

成员重载仅适用于 对象上下文。这些神奇的方法 静态时不会被触发 语境。因此这些方法可以 不被声明为静态。


在 PHP 5.3 中,__callStatic http://php.net/manual/en/language.oop5.overloading.php#language.oop5.overloading.methods已添加;但没有__getStatic nor __setStatic然而 ;即使拥有/编码它们的想法经常出现在 php insides@ 邮件列表上。

甚至还有一个征求意见:PHP 的静态类 http://wiki.php.net/rfc/static-classes
但仍然没有实施(yet ? )

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 中静态属性的神奇 __get getter 的相关文章

随机推荐

  • 更改 UIAlertView 中取消按钮的位置?

    我注意到 当我从 iPhone 主屏幕删除应用程序时 出现的警报视图左侧显示 删除 按钮 右侧显示 取消 按钮 但是 当我使用 UIAlertView 在应用程序中构建删除功能时 按钮似乎仅显示左侧的 取消 和右侧的 删除 我希望我的应用程
  • Android:获取Facebook好友列表

    我正在使用脸书软件开发工具包 https github com facebook facebook android sdk 在墙上张贴消息 现在我需要获取 Facebook 好友列表 有人能帮我解决这个问题吗 编辑 try Facebook
  • Android 设置视图位置 - setY 与 setTop

    我打算以编程方式移动按钮的位置 按钮处于相对布局 我研究发现我们可以使用 setY or setTop 看起来它们的工作原理应该是一样的 但就我而言 setTop 根本不改变位置并且 setY 仅有效 我不确定我误解了什么 但这对我来说很奇
  • 如何摆脱 VS Code 中的“同步更改 1 ↑”按钮?

    最近 由于某种原因 每次我想要将更改推送到 GitHub 存储库时 我都必须按此按钮 我不记得是否有一个设置是我不小心切换的 我也从未在 VS Code 环境之外更改我的存储库 我正在使用 Gatsby GitHub Netlify 设置
  • 软键盘覆盖 PopupWindow 中的 EditText

    我整理了一个简单的测试项目 它显示一个包含 EditText 的 PopupWindow 在 Android 2 2 上 当我点击 EditText 时 会显示软键盘 正如我所期望的那样 但是 软键盘覆盖了 EditText 并且我无法平移
  • APC缓存碎片问题

    我在 CentOS 服务器 5 上运行 APC php 缓存 每天 13 000 次访问 运行 php 5 3 3 APC 3 1 4 和 4Gb RAM 在过去的几周里 我经历了很多 unable to allocate memory f
  • 响应图表不受控制地增长

    我有一个 vue 组件 它实现了 vue chartjs 的 Horizo ntalBar 组件 我将其渲染为 bootstrap vue 表中的单元格 我的愿望是让图表保持固定的高度 但随着窗口的增大 缩小而水平缩放 当页面首次加载时 图
  • 使用堆栈反转数组

    我正在尝试使用堆栈反转数组 但是 我收到错误arr i stack top 在 Eclipse 中解决它的建议是将其更改为arr i stack pop 或添加演员阵容 还有其他方法吗 或者我犯了一个错误 我看到教程和问题询问如何使用堆栈反
  • 如何在 R 中使用 H2o 从 SQL Server 加载表?

    我尝试使用 h2o 将表加载到 R 中 但出现以下错误 my data lt h2o import sql table my sql conn table username password 错误 意外的 HTTP 状态代码 500 服务器
  • Javascript - innerHTML 不适用于 HTML 选择菜单

    在我的 HTML 页面中 我有 2 个选择菜单 其 ID 为 月 和 日 页面加载时 日 为空 月 有 12 个选项 其值 1 12 对应于一月至十二月 month 有一个 onchange 事件调用此函数 function showOut
  • 属性 KeyValuePair.Value 没有 setter

    我正在使用一个Dictionary
  • Java 中的时区

    我允许我的网络应用程序上的用户根据他们选择的时区安排活动 我想向最终用户提供一份良好的时区列表 然后将其轻松转换为java util TimeZone服务器端的对象 String TimeZone getAvailableIds 是我可以使
  • 从 vs 2017 以编程方式连接到 TFS

    我在用TFS 15 x package Error Microsoft TeamFoundation TeamFoundationServerUnauthorizedException TF30063 您无权访问 https myproje
  • 使用钩子时,React 批量状态更新功能是否有效?

    对于类组件 this setState如果在事件处理程序内部 则调用批处理 但是如果状态在事件处理程序之外更新并使用 会发生什么useState hook function Component const a setA useState a
  • StandardScaler -ValueError:输入包含 NaN、无穷大或对于 dtype('float64') 来说太大的值

    我有以下代码 X df X as matrix header 1 col num scaler preprocessing StandardScaler fit X X nor scaler transform X 并得到以下错误 File
  • 如何使用 Objective-C 判断 iPhone 是否连接到 wifi 网络?

    在 Objective C iPhone 应用程序的上下文中 我需要能够判断 iPhone 是否已连接到 wifi 网络 并在可能的情况下侦听此状态的变化 有谁知道如何做到这一点 谢谢 加布伊 正如其他人提到的 可达性样本 https de
  • 在 Reactjs 中的 EsLint“react / jsx-props-no-spreading”错误中禁用

    安装 EsLint 后 我 出现的错误之一如下 禁止传播 propeslint react jsx props no spreading 我想在 EsLint 配置中创建一条规则来忽略此错误 但我发现的示例不起作用 这是创建全局异常的格式
  • 正则表达式 Windows 路径验证器

    我试图找到一个针对 Javascript 的 Windows 文件路径验证 但似乎没有一个能够满足我想要的要求 所以我决定自己构建它 要求如下 路径不能为空 可能以 x x 开头 后跟文件名 无文件 需要延期 文件名不能包含以下特殊字符 文
  • PHP:可以包含 file_exists() 说不存在的文件

    在我的脚本中 我设置了包含路径 以便应用程序的另一部分也可以包含文件 检查文件是否存在 然后包含它 但是 在我设置包含路径后 file exists 报告该文件不存在 但我仍然可以包含相同的文件
  • PHP 中静态属性的神奇 __get getter

    public static function get value 不起作用 即使它起作用 碰巧我已经需要神奇的 get getter 作为同一个类中的实例属性 这可能是一个是或否的问题 那么 有可能吗 不 这是不可能的 引用 get 的手册