本文整理汇总了PHP中Psr\Http\Message\StreamInterface::writeJavascript方法的典型用法代码示例。如果您正苦于以下问题:PHP StreamInterface::writeJavascript方法的具体用法?PHP StreamInterface::writeJavascript怎么用?PHP StreamInterface::writeJavascript使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Psr\Http\Message\StreamInterface
的用法示例。
在下文中一共展示了StreamInterface::writeJavascript方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: handle
/**
* @param DisplayPageCommand $command
*/
public function handle(DisplayPageCommand $command)
{
$id = $command->getId();
$this->vars = $command->getVars();
$this->request = $command->getRequest();
$this->output = $command->getStream();
$this->container = $command->getContainer();
$this->registerContentTypes();
/** @var RepositoryFactory $repositoryFactory */
$repositoryFactory = $this->container->get('Repository');
$repository = $repositoryFactory->forEntity(Page::class);
$page = $repository->getById($id);
$contentItems[] = $page->content->getAll();
for ($m = $page->layout; $m != null; $m = $m->parent) {
array_unshift($contentItems, $m->content->getAll());
}
$contentItems = $this->flatten($contentItems);
if (!isset($page->parent)) {
$page->parent = $page->layout;
}
$contentTree = $this->buildTree($contentItems);
$data = get_object_vars($page);
if ($data['title'][0] == ':') {
// @todo Retrieve the title
}
$templatePath = $page->layout->template->path;
$this->output->setTemplate($templatePath);
$template = $this->loadTemplate(JPATH_ROOT . '/' . $templatePath . '/index.php', $data);
$parts = preg_split('~</body>~', $template, 2);
$parts[1] = '</body>' . $parts[1];
$this->output->write($parts[0]);
foreach ($contentTree as $root) {
$root->accept($this->output);
}
$queryParams = $this->request->getQueryParams();
if (isset($queryParams['debug'])) {
$this->dumpSql();
}
$this->output->writeJavascript();
$this->output->writeCss();
$this->output->write($parts[1]);
}