반응형
치명적인 오류: auto-global 변수 _POST를 재할당할 수 없습니다.
WP(버전 3.4.2) 관리자에게 접근할 수 없습니다.위와 같이 되어 있습니다.
치명적인 오류: /home/xxx/public_html/wp-content/themes16/rt-framework/classes/admin에서 자동 글로벌 변수 _POST를 재할당할 수 없습니다.540행의 php.
회선 540은 다음과 같습니다.
function rt_check_sidebar_array($_POST){
if(is_array($_POST)){
$start_unset_count = 0;
foreach($_POST as $key => $value){
if(stristr($key, '_sidebar_name') == TRUE && $value=="") {
unset($_POST[$key]);
$start_unset_count = 1;
}
if($start_unset_count>0){
unset($_POST[$key]);
$start_unset_count++;
}
if($start_unset_count==6){
$start_unset_count = 0;
}
}
}
$newPost == $newPost ? $newPost : $_POST;
return $_POST;
}
통찰력 있나요?감사합니다:)
PHP 5.4 이후, 함수에 대한 매개 변수로 superglobal을 사용할 수 없습니다.
$_POST는 글로벌하게 액세스 할 수 있습니다.따라서 기능으로 이동할 필요가 없습니다.
http://php.net/manual/en/language.variables.superglobals.php#112184
이 기능은 다음과 같습니다.
function rt_check_sidebar_array(){
if(is_array($_POST)){
$start_unset_count = 0;
foreach($_POST as $key => $value){
if(stristr($key, '_sidebar_name') == TRUE && $value=="") {
unset($_POST[$key]);
$start_unset_count = 1;
}
if($start_unset_count>0){
unset($_POST[$key]);
$start_unset_count++;
}
if($start_unset_count==6){
$start_unset_count = 0;
}
}
}
$newPost == $newPost ? $newPost : $_POST;
return $_POST;
}
@user3450716, Abhik Chakraborty가 말한 것처럼 당신이 해야 할 일은$_POST
기능에서rt_check_sidebar
다음과 같이 함수에 매개 변수를 지정하지 않고 그대로 둡니다.
회선 540:
function rt_check_sidebar_array($_POST){
다음으로 변경합니다.
function rt_check_sidebar_array(){
@user3450716.superglobal 변수도 변경할 수 없으므로unset($_POST[$key])
function rt_check_sidebar_array(){
$post = $_POST;
if(is_array($post)){
$start_unset_count = 0;
foreach( $post as $key => $value ){
if( stristr( $key, '_sidebar_name' ) == TRUE && $value == "" ) {
unset( $post[ $key ] );
$start_unset_count = 1;
}
if( $start_unset_count > 0 ){
unset( $post[ $key ] );
$start_unset_count++;
}
if( $start_unset_count == 6 ){
$start_unset_count = 0;
}
}
}
// idk why you wrote this,
// because $newPost variable isn't used in the code above and below
$newPost == $newPost ? $newPost : $post;
return $post;
}
언급URL : https://stackoverflow.com/questions/22583386/fatal-error-cannot-re-assign-auto-global-variable-post
반응형
'source' 카테고리의 다른 글
AngularJS UI 라우터 - 상태를 다시 로드하지 않고 URL 변경 (0) | 2023.03.23 |
---|---|
Angular와 함께 사용할 애플리케이션 구조JS랑 라라벨? (0) | 2023.03.23 |
레독스는 그저 글로벌한 국가일 뿐이지 않나요? (0) | 2023.03.23 |
교차 도메인 AJAX가 X-Requested-With 헤더를 전송하지 않음 (0) | 2023.03.23 |
AngularJs의 $evalAsync와 $timeout의 차이점은 무엇입니까? (0) | 2023.03.23 |