本文整理匯總了PHP中JMS\Serializer\Serializer::setSerializationContextFactory方法的典型用法代碼示例。如果您正苦於以下問題:PHP Serializer::setSerializationContextFactory方法的具體用法?PHP Serializer::setSerializationContextFactory怎麽用?PHP Serializer::setSerializationContextFactory使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類JMS\Serializer\Serializer
的用法示例。
在下文中一共展示了Serializer::setSerializationContextFactory方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: build
public function build()
{
$annotationReader = $this->annotationReader;
if (null === $annotationReader) {
$annotationReader = new AnnotationReader();
if (null !== $this->cacheDir) {
$this->createDir($this->cacheDir . '/annotations');
$annotationsCache = new FilesystemCache($this->cacheDir . '/annotations');
$annotationReader = new CachedReader($annotationReader, $annotationsCache, $this->debug);
}
}
$metadataDriver = $this->driverFactory->createDriver($this->metadataDirs, $annotationReader);
$metadataFactory = new MetadataFactory($metadataDriver, null, $this->debug);
$metadataFactory->setIncludeInterfaces($this->includeInterfaceMetadata);
if (null !== $this->cacheDir) {
$this->createDir($this->cacheDir . '/metadata');
$metadataFactory->setCache(new FileCache($this->cacheDir . '/metadata'));
}
if (!$this->handlersConfigured) {
$this->addDefaultHandlers();
}
if (!$this->listenersConfigured) {
$this->addDefaultListeners();
}
if (!$this->visitorsAdded) {
$this->addDefaultSerializationVisitors();
$this->addDefaultDeserializationVisitors();
}
$serializer = new Serializer($metadataFactory, $this->handlerRegistry, $this->objectConstructor ?: new UnserializeObjectConstructor(), $this->serializationVisitors, $this->deserializationVisitors, $this->eventDispatcher);
if (null !== $this->serializationContextFactory) {
$serializer->setSerializationContextFactory($this->serializationContextFactory);
}
if (null !== $this->deserializationContextFactory) {
$serializer->setDeserializationContextFactory($this->deserializationContextFactory);
}
return $serializer;
}