SO网友:Frank P. Walentynowicz
这里面没有“魔法”,但有两种magic
方法WP_Post
班__isset()
, 和__get()
.
你的extra_data
不是的属性WP_Post
类,所以首先var_dump
不包括它。
对不存在的属性的引用WP_Post
雇佣那些magic
方法检索post的元数据。
第一$post->__isset(\'extra_data\')
将执行,如果false
返回,然后$post->extra_data
将是空数组,否则$post->__get(\'extra_data\')
将运行,返回元数据。这就是为什么你的第二个var_dump
显示extra_data
.
Note: 事实上,米洛对这个问题的第一个评论是完美的答案。