本文整理汇总了PHP中Sonata\BlockBundle\Model\BlockInterface::getId方法的典型用法代码示例。如果您正苦于以下问题:PHP BlockInterface::getId方法的具体用法?PHP BlockInterface::getId怎么用?PHP BlockInterface::getId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sonata\BlockBundle\Model\BlockInterface
的用法示例。
在下文中一共展示了BlockInterface::getId方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: render
/**
* {@inheritdoc}
*/
public function render(BlockInterface $block, Response $response = null)
{
if ($this->logger) {
$this->logger->info(sprintf('[cms::renderBlock] block.id=%d, block.type=%s ', $block->getId(), $block->getType()));
}
try {
$service = $this->blockServiceManager->get($block);
$service->load($block);
// load the block
$response = $service->execute($block, $response);
if (!$response instanceof Response) {
throw new \RuntimeException('A block service must return a Response object');
}
} catch (\Exception $e) {
if ($this->logger) {
$this->logger->crit(sprintf('[cms::renderBlock] block.id=%d - error while rendering block - %s', $block->getId(), $e->getMessage()));
}
if ($this->debug) {
throw $e;
}
$response = new Response();
$response->setPrivate();
}
return $response;
}
示例2: renderBlock
/**
* @param BlockInterface $block
* @param OutputInterface $output
* @param int $spance
*/
public function renderBlock(BlockInterface $block, OutputInterface $output, $extended, $space = 0)
{
$output->writeln(sprintf("%s <comment>> Id: %d - type: %s - name: %s</comment>", str_repeat(" ", $space), $block->getId(), $block->getType(), $block->getName()));
if ($extended) {
foreach ($block->getSettings() as $name => $value) {
$output->writeln(sprintf("%s %s: %s", str_repeat(" ", $space + 1), $name, var_export($value, 1)));
}
}
foreach ($block->getChildren() as $block) {
$this->renderBlock($block, $output, $extended, $space + 1);
}
}
示例3: stopTracing
/**
* @param BlockInterface $block
* @param array $stats
*/
protected function stopTracing(BlockInterface $block, array $stats)
{
$e = $this->traces[$block->getId()]->stop();
$this->traces[$block->getId()] = array_merge($stats, array('duration' => $e->getDuration(), 'memory_end' => memory_get_usage(true), 'memory_peak' => memory_get_peak_usage(true)));
$this->traces[$block->getId()]['cache']['lifetime'] = $this->traces[$block->getId()]['cache']['age'] + $this->traces[$block->getId()]['cache']['ttl'];
}
示例4: validate
/**
* @todo: this function should be remove into a proper statefull object
*
* {@inheritdoc}
*/
public function validate(ErrorElement $errorElement, BlockInterface $block)
{
if (!$block->getId() && !$block->getType()) {
return;
}
if ($this->inValidate) {
return;
}
// As block can be nested, we only need to validate the main block, no the children
try {
$this->inValidate = true;
$this->get($block)->validateBlock($errorElement, $block);
$this->inValidate = false;
} catch (\Exception $e) {
$this->inValidate = false;
}
}
示例5: getCacheKeys
/**
* {@inheritdoc}
*/
public function getCacheKeys(BlockInterface $block)
{
return array('block_id' => $block->getId(), 'updated_at' => $block->getUpdatedAt() ? $block->getUpdatedAt()->format('U') : strtotime('now'));
}
示例6: getCacheKeys
/**
* {@inheritdoc}
*/
public function getCacheKeys(BlockInterface $block)
{
return array('name' => $this->getName(), 'block_id' => $block->getId(), 'updated_at' => $block->getUpdatedAt()->format('U'));
}
示例7: createBlocks
/**
* @param BlockInterface $block
*
* @return array
*/
protected function createBlocks(BlockInterface $block)
{
$content = array();
$content['id'] = $block->getId();
$content['name'] = $block->getName();
$content['enabled'] = $block->getEnabled();
$content['position'] = $block->getPosition();
$content['settings'] = $block->getSettings();
$content['type'] = $block->getType();
$content['created_at'] = $block->getCreatedAt()->format('U');
$content['updated_at'] = $block->getUpdatedAt()->format('U');
$content['blocks'] = array();
foreach ($block->getChildren() as $child) {
$content['blocks'][] = $this->createBlocks($child);
}
return $content;
}
示例8: validate
/**
* {@inheritdoc}
*/
public function validate(ErrorElement $errorElement, BlockInterface $block)
{
if (!$block->getId() && !$block->getType()) {
return;
}
$this->get($block)->validateBlock($errorElement, $block);
}