本文整理汇总了PHP中Nette\Forms\Container::getClassName方法的典型用法代码示例。如果您正苦于以下问题:PHP Container::getClassName方法的具体用法?PHP Container::getClassName怎么用?PHP Container::getClassName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Nette\Forms\Container
的用法示例。
在下文中一共展示了Container::getClassName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getMetadata
/**
* @param \Nette\Forms\Container|\NForms\IContainer $container
* @param $object
* @throws \NForms\Exceptions\InvalidStateException
* @throws \NForms\Exceptions\InvalidArgumentException
* @throws \NForms\Exceptions\UnexpectedTypeException
* @return \NForms\Metadata\IClassMetadata
*/
private function getMetadata(Container $container, $object)
{
if (!is_object($object)) {
throw new InvalidArgumentException("Expected object, given '" . gettype($object) . "'");
}
if ($container instanceof IContainer) {
if ($container->getClassName() === NULL) {
throw new InvalidStateException("Container '{$container->getName()}' has no class.");
}
if (!is_a($object, $container->getClassName())) {
throw new UnexpectedTypeException("Class mismatch. Container is for '{$container->getClassName()}' class, but object is '" . get_class($object) . "'.");
}
$className = $container->getClassName();
} else {
$className = get_class($object);
}
return $this->metadataFactory->getMetadataFor($className);
}