【问题标题】:symfony2 render php return contains invalid characterssymfony2 渲染 php 返回包含无效字符
【发布时间】:2013-12-11 08:12:10
【问题描述】:

我正在尝试在 symfony2 中渲染一个 php 文件。

在我正在使用的 config.yml 中:

# app/config/config.yml
framework:
    # ...
    templating:    { engines: ['twig', 'php'] }

在控制器中:

public function installAction($name) {
        $finder = new Finder();
        $finder->files()->in('../src/Admin/ModuleBundle/Modules/'.$name.'/')->directories();
        foreach ($finder as $file) {
            return $this->render($file.'/install.php');
        }}

但我得到了这个错误: 模板名称“../src/Admin/ModuleBundle/Modules/Module1/config/install.php”包含无效字符。

以及文件的内容:

< ?php echo "Module1 install";

我做错了什么? php 文件只是一个简单的回显

【问题讨论】:

  • 可以this SO Answer帮助你吗?
  • ...如果您还没有的话,还请看看Docs

标签: php symfony


【解决方案1】:
< ?php echo "Module1 install";
 ^

这个空间。 EDIT 其实看看内部结构,好像是这行:

if (false !== strpos($name, '..')) {
    throw new \RuntimeException(sprintf('Template name "%s" contains invalid characters.', $name));
}

(来自this file)会建议您的路径不能包含在目录树中上一级的相对路径。

【讨论】:

  • 看来有人需要更多咖啡 ^^
  • 这个空间是因为 stackoverflow 无法识别文本
  • 对不起,我听不懂,能不能给我解释一下,谢谢
  • @BrunoRamalho,基本上,不要在路径名称中使用 ..'s
  • 那我还能用什么?因为我需要返回一级然后进入 Modules/name/config/install.php
猜你喜欢
  • 1970-01-01
  • 2018-06-05
  • 1970-01-01
  • 2017-11-16
  • 2019-01-08
  • 2019-04-18
  • 2017-02-28
  • 2014-10-21
  • 1970-01-01
相关资源
最近更新 更多