dqdtgiw4736 2013-08-19 10:55
浏览 47
已采纳

注意:未定义的偏移量:0在PHP中使用Array

When I'm executing this code-

public $speaker_list=array();

for($i=0;$i<$nbre_speaker;$i++)
{
     $speaker_list[$i]=new Speaker($_POST['speaker'+$i],$_POST['pro_speaker'+$i],$_POST['bio_speaker'+$i]);
}

I'm getting the error:

Notice: Undefined offset: 0

Notice: Undefined offset: 1

  • 写回答

1条回答 默认 最新

  • dq62957 2013-08-19 11:04
    关注

    Assuming $nbre_speaker is set to something sensible outside the code you provided.

    Try this

    public $speaker_list = array();
    
    for($i=0; $i < $nbre_speaker; $i++)
    {
         if ( isset($_POST['speaker'.$i], $_POST['pro_speaker'.$i], $_POST['bio_speaker'.$i] )) {
             $speaker_list[$i] = new Speaker($_POST['speaker'.$i], 
                                             $_POST['pro_speaker'.$i], 
                                             $_POST['bio_speaker'.$i]);
         } else {
            // report error, or do something to fix it.
         }
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?