테스트 사이트 - 개발 중인 베타 버전입니다

php 7.2 버전에 call_name 함수 채택완료

진수씨 6년 전 조회 1,840

php7.2 버전에 특정스킨이 에러나서 소스를 보고 있는데요,

 

Warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'latest' not found or invalid function name in /home/users/www/extend/templete.extend.php on line 249

 

이러한 에러가 납니다.

 

extend/templete.extend.php

에 call_name 이라는 함수가 있네요.

 

function call_name($name) {
$cf_name = $name;
$f_tmp = explode("(", $cf_name);
$f_name = trim($f_tmp[0]);
$f_tmp = explode(")", $f_tmp[1]);
$f_para = explode(",", $f_tmp[0]);
for($p = 0; $p < count($f_para); $p++) { $f_para[$p] = trim(trim($f_para[$p]), "\""); }

return call_user_func_array($f_name, $f_para);
}

 

 

$name = 'latest("good_webzine_full", "basic_main_banner", 1, 48)';
call_name($name);

 

이게 뭔가 잘못된것 같은데..

도저히 저 함수가 이해가 안가네요..

 

php 7.2 버전으로 수정하려면 어떻게 해야하나요?

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
6년 전

call_name() 함수는 그냥 latest() 함수를 실행하라는 함수입니다.

왜 저렇게 따로 함수를 만들었는지 모르겠습니다만 - 그럴만한 이유가 있는거겠지만, 제가 그걸

보지 못하니 - 

그냥 latest() 함수를 실행시킬려면

echo latest("good_webzine_full", "basic_main_banner", 1, 48); 이렇게 하면 됩니다.

 

위 에러내용은 latest() 함수를 불러오지 못해 발생하는 듯 하네요.

저 내용이 있는 페이지 상단에 다음이 있는지 확인해 보시죠.

include_once('./_common.php');

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

call_user_func_array( ) 이 함수를 어떻게 사용해야 하는지 확인해보세요

http://php.net/manual/en/function.call-user-func-array.php

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인