Codeigniter 遇到 PHP 错误
Codeigniter A PHP Error was encountered
我收到以下错误
A PHP Error was encountered Severity: Notice Message: Undefined
offset:3
最后一行错误
private function date_conversion($str){
$this->lang->load('calendar');
$arr = explode(' ', $str);
$month = array(
$this->lang->line('cal_january') => '01', $this->lang->line('cal_february') => '02', $this->lang->line('cal_march') => '03',
$this->lang->line('cal_april') => '04', $this->lang->line('cal_may') => '05', $this->lang->line('cal_june') => '06',
$this->lang->line('cal_july') => '07', $this->lang->line('cal_august') => '08', $this->lang->line('cal_september') => '09',
$this->lang->line('cal_october') => '10', $this->lang->line('cal_november') => '11', $this->lang->line('cal_december') => '12',
);
return $arr[3].'-'.$month[$arr[2]].'-'.($arr[1]<10?'0'.$arr[1]:$arr[1]);
}
和第一个过程来自这个
'date_of_birth'=>$field['adult']['date_of_birth']?$this->date_conversion($this->input->post('adult_date_of_birth_'.$i)):NULL,
怎么了?
可能 $arr 没有索引 3,如果你知道它只有 3 个元素,那么索引 2 就是 2
变化:
return $arr[3].'-'.$month[$arr[2]].'-'.($arr[1]<10?'0'.$arr[1]:$arr[1]);
对于:
return $arr[2].'-'.$month[$arr[1]].'-'.($arr[0]<10?'0'.$arr[0]:$arr[0]);
您只是假设要分解成数组的字符串有 4 个部分。像 "My Nice String" 这样的字符串最终会变成一个数组 ("My", "Nice", "String");其中索引 0 的值为 "My",索引 1 的值为 "Nice,索引 2 的值为 "String".
请注意,数组索引是从零开始的,这意味着第一个元素通常以索引 0 开头,而不是 1。除非数组的定义不同。
我收到以下错误
A PHP Error was encountered Severity: Notice Message: Undefined offset:3
最后一行错误
private function date_conversion($str){
$this->lang->load('calendar');
$arr = explode(' ', $str);
$month = array(
$this->lang->line('cal_january') => '01', $this->lang->line('cal_february') => '02', $this->lang->line('cal_march') => '03',
$this->lang->line('cal_april') => '04', $this->lang->line('cal_may') => '05', $this->lang->line('cal_june') => '06',
$this->lang->line('cal_july') => '07', $this->lang->line('cal_august') => '08', $this->lang->line('cal_september') => '09',
$this->lang->line('cal_october') => '10', $this->lang->line('cal_november') => '11', $this->lang->line('cal_december') => '12',
);
return $arr[3].'-'.$month[$arr[2]].'-'.($arr[1]<10?'0'.$arr[1]:$arr[1]);
}
和第一个过程来自这个
'date_of_birth'=>$field['adult']['date_of_birth']?$this->date_conversion($this->input->post('adult_date_of_birth_'.$i)):NULL,
怎么了?
可能 $arr 没有索引 3,如果你知道它只有 3 个元素,那么索引 2 就是 2
变化:
return $arr[3].'-'.$month[$arr[2]].'-'.($arr[1]<10?'0'.$arr[1]:$arr[1]);
对于:
return $arr[2].'-'.$month[$arr[1]].'-'.($arr[0]<10?'0'.$arr[0]:$arr[0]);
您只是假设要分解成数组的字符串有 4 个部分。像 "My Nice String" 这样的字符串最终会变成一个数组 ("My", "Nice", "String");其中索引 0 的值为 "My",索引 1 的值为 "Nice,索引 2 的值为 "String".
请注意,数组索引是从零开始的,这意味着第一个元素通常以索引 0 开头,而不是 1。除非数组的定义不同。