Fatal error: Uncaught Error: Call to undefined function eregi_replace() in /host/home1/아이디 삭제/html/widgets/traffic_status/traffic_status.class.php:26 Stack trace: #0 /host/home1/아이디 삭제/html/modules/widget/widget.controller.php(372): traffic_status->proc(Object(Xml_Node_)) #1 /host/home1/아이디 삭제/html/modules/widget/widget.controller.php(468): widgetController->getCache('traffic_status', Object(Xml_Node_)) #2 /host/home1/아이디 삭제/html/modules/widget/widget.controller.php(291): widgetController->execute('traffic_status', Object(Xml_Node_), false) #3 [internal function]: widgetController->transWidget(Array) #4 /host/home1/아이디 삭제/html/modules/widget/widget.controller.php(269): preg_replace_callback('!<img([^\\>]*)wi...', Array, '<div id="nc_con...') #5 /host/home1/아이디 삭제/html/modules/widget/widget.controller.php(252): widgetController->transWidgetCode('<div id="nc_con...', false) #6 /host/home1/아이디 삭제/html/classes/module/ModuleHandler.class.php(1318): widgetController->triggerWidgetCompile('<div id="nc in /host/home1/아이디 삭제/html/widgets/traffic_status/traffic_status.class.php on line 26
Object 확인하였으나 존재하지 않습니다.
그 외 모든 에러를 잡았습니다.
PHP 5.3 이후 버전부터는(정확하게는 6.0 이상 / 5.6에서는 사용 가능하나 Deprecated 된 기능) eregi_replace 함수를 사용하실 수 없습니다.
해당 로직은 PHP 버전업과 함께 preg_replace 함수를 사용한 로직으로 업데이트 해 주셔야 하나,
불가피하게 eregi_replace 함수를 계속 사용하셔야 한다면,
function eregi_replace($pattern, $replacement, $string) { return preg_replace('/'.$pattern.'/i', $replacement, $string); }
으로 해당 함수를 정의하여 사용하실 수 있습니다.
어지간한 패턴은 위 함수로 처리가 가능하나, 몇몇 복잡하거나 예외적인 문자가 들어갈 경우 처리가 불가능 할 수 있으니..!
이런 해결책은 단순한 미봉책임을 알아두시면 되겠습니다.