PHP 8 버전이상에서 썸띵모듈(something) 에러 수정 방법 (2024/04/04 업데이트)
PHP8 이상에서 발견된 썸띵모듈 에러과 수정방법을 이번에 새로 발견된 에러 해결방법과 함께 이전에 작성된 https://xetown.com/tips/1785303 의 내용도 이 게시글에 포함하여 추후 에러 재발견시 이 게시글을 업데이트 하도록 하겠습니다.
1.썸띵모듈 설정페이지 진입시 에러
에러메세지:
-------------
서버 오류
TypeError #0 "in_array(): Argument #2 ($haystack) must be of type array, string given" in modules/something/tpl/config.html on line 137
common/framework/debug.php:681
-------------
something.admin.controller.php 18행 부근
if (count($obj->group) == 0) 이라는 구문을 if (isset($obj->group)) 로 수정
something/tpl/config.html 131행 부근
위 부분을 다음과 같이 수정
2.썸띵모듈 데이터 설정에서 추출할 게시판 설정후 회원썸띵페이지 방문시 에러
에러메세지:
-------------
서버 오류
TypeError #0 "implode(): Argument #2 ($array) must be of type ?array, string given" in modules/something/something.model.php on line 362 Message Location : modules/something/something.model.php:362
-------------
something.model.php 32행 부근
if (count($config->board_module_srls) > 0)
{
$board_srls = implode($config->board_module_srls, ",");
}
위 이부분을 다음과 같이 수정
$config = $this->getConfig();
if (is_array($config->board_module_srls) && count($config->board_module_srls) > 0) {
$board_srls = implode(",", $config->board_module_srls);
}
something.model.php 102행 부근
{
$board_srls = implode($config->board_module_srls, ",");
}
위 이부분을 다음과 같이 수정
{
$board_srls = implode(",", $config->board_module_srls);
}
something.model.php 362행 부근
{
$board_srls = implode($config->board_module_srls, ",");
}
위 부분을 다음과 같이 수정
{
$board_srls = implode(",", $config->board_module_srls);
}

댓글 2