【发布时间】:2026-02-15 15:40:01
【问题描述】:
我正在使用学说 2 和 zend 框架 1.11。在 Doctrine 2 中不鼓励公共属性,所以我将我的实体属性设为私有。但是我刚刚了解到 Zend_Json::encode() 和 json_encode() 不会看到私有/受保护的属性,因此不会将它们添加到它们的输出中。
因此,当我使用其中一个和 var_dump 时,我得到一个空集,例如 string(4) "[{}]"。
事实证明,我必须编写自己的函数来进行编码。我希望有人有我可以使用的解决方案。
【问题讨论】:
-
我读过同样的东西并试图解决那些私有模型属性,但最终放弃了。我的应用程序中 Doctrine 的全部要点都被 Ext.Direct API 公开,该 API 在内部使用 json_encode。使用序列化程序或打包方法来解决这个问题实在是太费劲了,特别是因为我的模型是自动生成的。我知道这是不好的做法,但它仍然非常有效。