artefakt777
Постоялец
- Регистрация
- 15 Июл 2012
- Сообщения
- 537
- Реакции
- 141
- Автор темы
- #1
Приветствую! Имеется вот такой код, где разработчики заглушили вывод ошибок собачкой (@), но при переносе на другой хостинг, ошибки все равно начало выводить.
Собственно, как можно по другому заглушить эти ошибки, спасибо.
Собственно, как можно по другому заглушить эти ошибки, спасибо.
Код:
$sContentUn = (!empty($sContent) ? @unserialize($sContent) : false);
if (is_array($sContentUn)) # un-сериализация прошла успешно
{
$sContent = $sContentUn;
} else if (!empty($sContent) && mb_stripos($sContent, ':{')!==false) {
# пытаемся починить сериализованные данные
$sContent = strtr($sContent, array("\r\n"=>"\n","\n"=>"\r\n")); // LF (Unix) => CRLF (Windows)
$sContentUn = @unserialize($sContent);
if (!is_array($sContentUn)) {
$sContent = preg_replace_callback('!s:(\d+):"(.*?)";!', function($match) {
return ($match[1] == strlen($match[2])) ? $match[0] : 's:' . strlen($match[2]) . ':"' . $match[2] . '";';
}, $sContent);
$sContentUn = @unserialize($sContent);
}
if (is_array($sContentUn)) {
$sContent = $sContentUn;
}
}