В настоящее время я использую codeigniter 2 с ci-Smarty. Просто пытался добавить умный выходной фильтр, но не очень повезло. Как будто функция не может быть найдена или что-то в этом роде?
Я использую плагин в качестве функции фильтра вывода и имею следующий код:
РАСПОЛОЖЕНИЕ: /libraries/Smarty.php
// Set email output filter
$this->loadFilter('output', 'protect_email');
РАСПОЛОЖЕНИЕ: / Third_Party/Smarty/plugins/function.protect_email.php
function smarty_function_protect_email($tpl_output, Smarty_Internal_Template $template)
{
$tpl_output =
preg_replace('!(\S+)@([a-zA-Z0-9\.\-]+\.([a-zA-Z]{2,3}|[0-9]{1,3}))!',
'$1%40$2', $tpl_output);
return $tpl_output;
}
Вышеприведенное, похоже, вызывает следующую умную ошибку:
Неустранимая ошибка: необработанное исключение «SmartyException» с сообщением «outputfilter «protect_email» не может быть вызвано» в /home/something/public_html/application/ Third_Party/Smarty/sysplugins/smarty_internal_templatebase.php:717 Трассировка стека: #0 /home/something/public_html /application/libraries/Smarty.php(46): Smarty_Internal_TemplateBase->loadFilter('output', 'protect_email') #1 /home/something/public_html/system/core/Loader.php(1095): CI_Smarty->__construct( Массив) #2 /home/something/public_html/system/core/Loader.php(975): CI_Loader->_ci_init_class('Smarty', '', NULL, NULL) #3 /home/something/public_html/system/core /Loader.php(216): CI_Loader->_ci_load_class('smarty', NULL, NULL) #4 /home/something/public_html/application/libraries/MY_Parser.php(29): CI_Loader->library('smarty') #5 /home/something/public_html/system/core/Loader.php(1099): MY_Parser->__construct() #6 /home/something/public_html/system/core/Loader.php(938): CI_Loader->_ci_init_class ("Парсер", "МОЙ_" , NULL, NULL) #7 /home/something/public_html/system/core/Loader.php(216): CI_Loa в /home/something/public_html/application/ Third_Party/Smarty/sysplugins/smarty_internal_templatebase.php в строке 717
Извините, что так долго! Просто подумал, что увидеть всю ошибку может помочь.
Большое спасибо за чтение и надеюсь, что кто-то может помочь.
--> РЕДАКТИРОВАТЬ Также только что попытался явно установить местоположение каталога плагинов, используя:
$this->setPluginsDir(config_item('plugin_directory'));
Эхо повторило местоположение, которое является правильным, но по-прежнему возникает та же проблема :(