首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

了解PHP魔术方法:__toString()、__invoke()和__debugInfo()

最近同事在研究内部开发的组件时,发现了一个__debugInfo()的用法,突然问我,我一时也没有想起这是个什么用法,于是重新阅读下 PHP 手册。...PHP 手册的用法,像这种魔术方法,是无法通过手册中的搜索来找到的,需要通过 URL 访问的方式,例如: __toString():https://www.php.net/__tostring __debuginfo...():https://www.php.net/__debuginfo 或者你记得它应该是 OOP 中包含的内容,则可以通过 OOP 的首页列表(https://www.php.net/oop)来找到Magic...本篇文章主要来看看__toString()、__invoke()、__debugInfo()这三个魔术方法。...__debugInfo() __debugInfo(): array 当通过 var_dump() 转储对象,获取应该要显示的属性的时候,该函数就会被调用。

14810
您找到你想要的搜索结果了吗?
是的
没有找到

开心档之C# 特性(Attribute)

: System.Attribute 在上面的代码中,我们已经声明了一个名为 DeBugInfo 的自定义特性。...构建自定义特性 让我们构建一个名为 DeBugInfo 的自定义特性,该特性将存储调试程序获得的信息。...它存储下面的信息: bug 的代码编号 辨认该 bug 的开发人员名字 最后一次审查该代码的日期 一个存储了开发人员标记的字符串消息 我们的 DeBugInfo 类将带有三个用于存储前三个信息的私有属性...所以 bug 编号、开发人员名字和审查日期将是 DeBugInfo 类的必需的定位( positional)参数,消息将是一个可选的命名(named)参数。 每个特性必须至少有一个构造函数。...(45, "Zara Ali", "12/8/2012", Message = "Return type mismatch")] [DeBugInfo(49, "Nuha Ali", "10/10/2012

40610

白话火焰图

需要着重说明的是,当你安装 kernel-devel 和 kernel-debuginfo 的时候,务必保证所安装的版本和当前内核版本一致,以 CentOS 为例: shell> yum install...yum-utils shell> yum install kernel-devel shell> debuginfo-install kernel 当生成的火焰图中有很多十六进制的乱码时,那么意味着对应程序缺失了...debuginfo,可以借助 gdb 来确认这一点,方法如下所示: shell> gdb -p 好消息是如果缺失了某些 debuginfo,那么 gdb 会在结尾提示你用 debuginfo-install...的文件,并在其中设置 enabled=1,如果没有类似名字的文件,那么可以在对应路径里手动创建一个,内容如下: [debug] name=CentOS-$releasever - DebugInfo...baseurl=http://debuginfo.centos.org/$releasever/$basearch/ gpgcheck=0 enabled=1 protect=1 priority=1

70130
领券