从4.2升级到4.4时,HTMLPurifier Linkify中断

时间:2012-12-08 18:35:44

标签: php composer-php htmlpurifier

今天我安装了Composer并安装了HTMLPurifier,这取代了旧的压缩下载。这将我的版本从4.2移到了4.4

此代码现在不再有效:

$config = HTMLPurifier_Config::createDefault();
$config->set('HTML.Allowed', 'a[href|title],em,strong,b,i,s,p'); 
$config->set('AutoFormat.Linkify', true); 
$purifier = new HTMLPurifier($config);

$do = is_null($comment) ? $this->comment : $comment;
$clean = $purifier->purify($do);

debug($clean);

如果我删除了composer autoload,并引用回旧库,它就可以了。这是一个包含http://www.google.com的字符串。但$clean$do

相同

修改 显然,通过编写器下载,HTMLPURIFIER_PREFIX常量没有被创建,并且它没有加载* .ser文件(即使它存在。这在library/HTMLPurifier/Bootstrap.php中定义,但该文件不是不包括在任何地方(因此没有定义,因此不起作用)。

edit2 在我看来,它与Composer的搭配并不好看。它根本不包含Bootstrap.php文件。不得不从我的应用程序手动拨打HTMLPurifier_Bootstrap::registerAutoload();,它的效果会更好。很好的工作我。更多信息here

1 个答案:

答案 0 :(得分:0)

如上所述,事实证明问题与Composer< - >有关。 HTMLPurifier进行交互,但未正确正确加载Bootstrap.php文件。手动呼叫HTMLPurifier_Bootstrap::registerAutoload();似乎已经修复了它。