有没有办法在Symfony(而不是JMSSerializer)的序列化程序组件中使用任何配置或类似的东西设置循环引用限制?
我有一个带有FOSRestBundle的REST应用程序和一些包含其他应该序列化的实体的实体.但我遇到了循环引用错误.
我知道如何设置它:
$encoder = new JsonEncoder();
$normalizer = new ObjectNormalizer();
$normalizer->setCircularReferenceHandler(function ($object) {
return $object->getName();
});
Run Code Online (Sandbox Code Playgroud)
但这必须在多个控制器中完成(对我来说是开销).我想在config(.yml)中全局设置它,例如:
framework:
serializer:
enabled: true
circular_limit: 5
Run Code Online (Sandbox Code Playgroud)
找不到序列化程序API参考,所以我想知道它是否可能?
我想将查询结果提取到一个类(到一个类的实例数组).但是我收到以下错误消息:致命错误:找不到类'类别'...这是我的数据库管理器类中涉及的两个函数的代码:
public function prepareStatement($_Statement)
{
$this->preparedStmt = $this->pdo->prepare($_Statement);
if($this->preparedStmt === FALSE)
throw new PreparedStmtException ("Fehler: Statement konnte nicht prepared werden.");
else
return TRUE;
}
public function execute($_Params = array(), $_FetchMode = NULL, $_Class = NULL)
{
# Cancel execution if no statement prepared
if($this->preparedStmt === null)
throw new PreparedStmtException ("Fehler: Statement wurde vor execute nicht prepared.");
try
{
# Execute PDO call with params
$this->preparedStmt->execute($_Params);
# If no data is returned throw NoDataException
if($this->preparedStmt->columnCount() == 0)
throw new NoDataException;
// …Run Code Online (Sandbox Code Playgroud)