Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 13776|Ответ: 1

[Взаимопомощь] Как исправить ошибку Includes\cls_template.php в строке 418 в ecshop

[Скопировать ссылку]
Опубликовано 20.02.2015 17:20:02 | | |

Проблема, с которой я столкнулся раньше, была очень расстроена, как её решить, и теперь я наконец нашла решение, и теперь я поделюсь им с вами, проблема такова:
Строгие стандарты: В строке 418 должны передаваться только переменные по ссылке в upload\includes\cls_template.php
Строка 418: $tag_sel = array_shift(explode(' ', $tag));

Обходной путь 1:
Проблема с версиями 5.3 и выше также связана с конфигурацией. Пока строка 418 делит это предложение на два предложения, нет проблемы $tag_sel = array_shift(explode(' ', $tag)); Изменено на:

$tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr);
Поскольку параметры array_shift передаются по ссылке, по умолчанию можно передавать только определённые переменные выше 5.3, и значение не может быть возвращено через функцию
Аналогично, при ошибках вложения функций их можно записать отдельно, и ошибки решаются естественным путём

Как:
функция get_dyna_libs($theme, $tmp)
{
$extsub = взрыв('.', $tmp);
$ext = конец($extsub);
$tmp = basename($tmp,".$ext");
$sql = 'ВЫБЕРИТЕ регион, библиотеку, sort_order, идентификатор, номер, тип'.
' ОТ ' . $GLOBALS['ecs']->table('template') .
" ГДЕ тема = '$theme' А имя файла = '" . $tmp . "' И тип > 0 И замечания=''".
«ПОРЯДОК ПО РЕГИОНАМ, БИБЛИОТЕКЕ, sort_order»;
$res = $GLOBALS['db']->getAll($sql);
$dyna_libs = массив();
foreach ($res AS $row)
{
$dyna_libs[$row['region']][$row['library']][] = array(
'id' => $row['id'],
'число' => $row['число'],
'type' => $row['type']
);
}
return $dyna_libs;
}

set $ext = end(explode('.', $tmp));
Перемены
$extsub = взрыв('.', $tmp);
$ext = конец($extsub);

Решение 2 (Ошибка маскировки):

Или, если настроить так: error_reporting = E_ALL | E_STRICT
В php.ini доступны следующие настройки:
error_reporting = E_ALL | E_STRICT

Это означает, что отображаются предупреждения о стандартах кодирования.
Joomla на самом деле рекомендует отменить вывод ошибок, который при необходимости следует изменить для отладки
error_reporting = E_ALL & ~E_NOTICE

Проблема была решена.




Предыдущий:Интерфейс QQ space information API
Следующий:Какая система личного блога лучше — давайте поговорим об этом
Опубликовано 21.02.2015 21:13:21 |
Рекомендуется напрямую снизить версию PHP до PHP5.2.x
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com