Symfony自动加载器组件

时间:2012-11-29 19:43:34

标签: php symfony twig autoloader

我得到了:

  

致命错误:Class'Twig_Loader_Filesystem'

<?php

require_once "library/Symfony/Component/ClassLoader/UniversalClassLoader.php";

use Symfony\Component\ClassLoader\UniversalClassLoader;

$loader = new UniversalClassLoader();
$loader->registerNamespace("Symfony\Component", "library/Symfony/Component");
$loader->registerPrefix("Twig_", "library/Twig");
$loader->register();

$loader = new Twig_Loader_Filesystem('templates');
$twig = new Twig_Environment($loader, array(
    'cache' => '',
));

?>

Twig文件夹位于库文件夹中。我是否误解了如何使用该组件?

1 个答案:

答案 0 :(得分:1)

  1. 您确定自己的路径是否正确?
  2. 尝试使用__DIR__ . '/library'
  3. 尝试使用DebugUniversalClassLoader来解决问题 - 您可以抓住RuntimeException并查看它实际尝试加载的文件。
  4. 修改

    正确的解决方案:如果您尝试从Twig_加载前缀为'/library/Twig'的PEAR样式的类,则应将其指向'/library',因为Twig_前缀本身将是用作/library

    中的目录名称