Mat*_*der 1 namespaces class symfony
我试图将htmlpurifier集成到symfony2控制器中,但是symfony2假设我试图实例化的类是那个不同的控制器的一部分,但它不是,它是一个包含类类型frmo htmlpurifier库.
有没有办法逃避类名,以便symfony2不在当前命名空间中查找它?
小智 6
我建议使用捆绑版本的HTMLPurifier for symfony2
你可以在gitHub上找到它:https://github.com/Exercise/HTMLPurifierBundle
使用composer安装非常简单
需要composer.json文件中的包:
{
"require": {
"exercise/htmlpurifier-bundle": "*",
}
}
Run Code Online (Sandbox Code Playgroud)
安装捆绑包:
$ composer update exercise/htmlpurifier-bundle
Run Code Online (Sandbox Code Playgroud)
注册bundle app/AppKernel.php:
public function registerBundles()
{
return array(
new Exercise\HTMLPurifierBundle\ExerciseHTMLPurifierBundle(),
// ...
);
}
Run Code Online (Sandbox Code Playgroud)
您可以将其用作控制器中的服务:
$purifier = $this->container->get('exercise_html_purifier.default');
$clean_html = $purifier->purify($dirty_html);
Run Code Online (Sandbox Code Playgroud)
或树枝模板中的过滤器:
{{ text|purify }}
Run Code Online (Sandbox Code Playgroud)
也是symfony2表单构建器的Form Data Transformer
这些都在文档中:https://github.com/Exercise/HTMLPurifierBundle