PHP class array error

我写过一个类,它查看电子邮件的不同部分。一个功能是通过检查文件名是否存在于其属性数组中来确定每个部分是否为文件。PHP class array error

我检查的样子:

if (array_key_exists("filename",$body_part->d_parameters)) { 

// do stuff

}

,但我一直因为在案件中获得我的日志此错误的部分不是一个文件(标题,正文等)不存在所谓的“文件名数组键“。

PHP Notice: Undefined property: stdClass::$d_parameters in mail.php 

PHP Warning: array_key_exists() expects parameter 2 to be array, null given in mail.php

回答:

第一个错误是因为$body_part->d_parameters在您引用它时不存在。

第二个错误是因为$body_part->d_parameters不是当你把它传递给array_key_exists()

解决方案的数组:试图将对象属性传递到功能之前使用isset()is_array()

if (isset($body_part->d_parameters) and is_array($body_part->d_parameters) and array_key_exists("filename",$body_part->d_parameters)) { 

// do stuff

}

以上是 PHP class array error 的全部内容, 来源链接: utcz.com/qa/260673.html

回到顶部