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

注意:未定义的偏移量:0在PHP中使用数组,php,arrays,Php,Arrays,当我执行这个代码时- 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]); } public$speaker_list=array(); 对于($i=0;$i假设$nbre\u speaker设置为您

当我执行这个代码时-

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]);
}
public$speaker_list=array();

对于($i=0;$i假设
$nbre\u speaker
设置为您提供的代码之外的合理值

试试这个

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.
     }

}
public$speaker_list=array();
对于($i=0;$i<$nbre\u扬声器;$i++)
{
如果(isset($_POST['speaker'.$i],$_POST['pro_speaker'.$i],$_POST['bio_speaker'.$i])){
$speaker\u list[$i]=新发言人($\u POST['speaker'.$i],
$_POST['pro_speaker'.$i],
$_POST['bio_speaker'.$i]);
}否则{
//报告错误,或采取措施修复错误。
}
}

该代码既不有效也不完整。@Faery:除了在非常特殊(罕见)的情况下,没有理由使用
array\u push
。字符串串联->
'speaker'。$i
问题出在这一行: