在执行期间,所有错误都保存到这样的数组中:
$this->errors[$section] = $e->getMessage();
问题是,在执行之后,我必须发布所有部分,包括那些尝试与错误连接的错误的部分。当我尝试:
echo $this->errors[$section];
这是我得到的警告:
Warning: Illegal offset type in ....
动态访问 PHP 数组中描述的解决方案没有帮助。
在执行期间,所有错误都保存到这样的数组中:
$this->errors[$section] = $e->getMessage();
问题是,在执行之后,我必须发布所有部分,包括那些尝试与错误连接的错误的部分。当我尝试:
echo $this->errors[$section];
这是我得到的警告:
Warning: Illegal offset type in ....
动态访问 PHP 数组中描述的解决方案没有帮助。
如果您还没有设置$section
,那么 PHP 将不知道要返回什么。
假设您的部分是具有某种 ID 号或字符串的数组:
$errors[$section['id']] = $e->getMessage();
...
foreach($errors as $error){
print_r($error);
}
我有一种感觉,您的问题在于 $section 不再设置为您在第二个代码块中想要的内容。
使用前检查索引是否有效:
if (array_key_exists($section, $this->errors) ) {
echo $this->errors[$section];
}