code

PHP의 "비개체에 대한 속성 가져오기 시도"

starcafe 2023. 6. 12. 21:38
반응형

PHP의 "비개체에 대한 속성 가져오기 시도"

저는 WordPress 테마 개발자이며 제가 작업 중인 테마에 대해 디버그 모드를 설정하고 테마의 옵션 페이지에 대한 선택 드롭다운 상자에 이 오류가 표시됩니다.

오류가 다음과 같이 표시됩니다. "비개체에 대한 속성을 가져오려고 합니다.문제가 되는 코드는 다음과 같습니다.

 <select name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>">
                <?php foreach ($value['options'] as $option) { ?>
               <option value="<?php echo $option->term_id; ?>"  <?php if ( $settings[$id] == $option->term_id) { echo 'selected="selected"'; }?>>
                    <?php echo $option->name; ?>
                </option>                       
               <?php }?>  </select> 

제가 뭘 잘못하고 있는지 모르겠어요.오류의 원인이 되는 행은 다음과 같습니다.

<option value="<?php echo $option->term_id; ?>"  <?php if ( $settings[$id] == $option->term_id) { echo 'selected="selected"'; }?>>

조언 감사합니다!:)

당신은 이런 일을 몇 번 하고 있습니다.

$option->someproperty

적어도 하나 이상의 경우$option개체가 아닙니다.할 때->개체가 아닌 경우 해당 오류가 발생합니다.

먼저 다음을 확인합니다.$option는 실제로 개체이며 그렇지 않은 경우 사용법을 수정합니다.

한다면$option배열입니다. 그렇다면 @novpavkov가 맞습니다. 당신은 그렇게 해야 합니다.$option['someproperty']대신에$option->someproperty.

한다면$option아마도 보통 물체일 것입니다.get_categories()때때로 돌아오는 것입니다.null또는false고장난 상태에서액세스하기 전에 해당 항목을 확인합니다.$option.

이와 같은 경우:

foreach ($value['options'] as $option)
{
    if ($option)
    {
        // do whatever;
    }
}

는 것 같습니다.$option배열입니다.시도:

$option['term_id']

알겠습니다. 무슨 말씀이신지 알겠습니다.코드 초기에 다음과 같은 내용이 있습니다(중요한 부분을 보여주기 위해 지나치게 단순화됨).

$news_categories = get_categories()  //pulls all of the categories from WordPress

        array ("minititle"      => '<span class="mini_title">Select the category you\'d like to use as your "Top Story" category.</span>',
            "id"        => $shortname . "_top_story_category",
            "type"      => "cat_select",
            "options" => $news_categories)

여기서 $value['options']가 발생합니다.코드는 스위치 문의 일부입니다...

문맥을 제공하기 위해서는 전체 파일을 게시해야 할 것이고, 꽤 깁니다.

작업에서 실행... 즉,:

function your_function(){
    YOUR CODES HEREEEEEEEEEEE............
}
ADD_ACTION('init','your_function');

언급URL : https://stackoverflow.com/questions/4486525/trying-to-get-properties-on-a-non-object-in-php

반응형