PHPLint错误:属性“SimpleXMLElement::$ERROR”不存在或不可见
全部, 我正在使用PHPLint评估我正在编写的PHP脚本,它返回以下错误: 错误:属性“SimpleXMLElement::$ERROR”不存在或不可见 参考的代码如下所示: $this->_xmlResponse=新的SimpleXMLElement$resultString 如果$this->\u xmlResponse!==NULL&&$this->\u xmlResponse->错误 _xmlResponse是一个类变量,声明如下: 私人/*。SimpleXMLElement.*/$\u xmlResponse=NULL SimpleXMLElement类的工作方式是使用->操作符按名称引用XML元素。所以我指的是SimpleXMLElement对象中的error元素 我也会遇到这样的错误: 错误:`->'运算符应用于类型为mixed的值 访问这样的元素时: “按”打印。htmlentities$状态->用户->屏幕名称PHPLint错误:属性“SimpleXMLElement::$ERROR”不存在或不可见,php,simplexml,lint,Php,Simplexml,Lint,全部, 我正在使用PHPLint评估我正在编写的PHP脚本,它返回以下错误: 错误:属性“SimpleXMLElement::$ERROR”不存在或不可见 参考的代码如下所示: $this->_xmlResponse=新的SimpleXMLElement$resultString 如果$this->\u xmlResponse!==NULL&&$this->\u xmlResponse->错误 _xmlResponse是一个类变量,声明如下: 私人/*。SimpleXMLElement.*/$\
代码运行良好,但PHPLint仍然会给出错误。我已经阅读了PHPLint参考手册,但是我不知道PHPLint是否无法解析simplexmlement,或者这是否真的是一个潜在的问题。有人能解释这个PHPLint错误吗?也许我需要做一些类型转换?您提出了两个不同的问题。首先,PHP5.3.6版本的SimpleXMLElement没有错误属性。请参阅文档。如果您阅读构造函数文档,您将看到检测错误的正确方法是捕获构造函数引发的异常。第二个错误很可能发生在$status或$status->user上,上面有一个@mixed PHPDocumentor注释,这是PHPLint使用的。将注释更改为@object应该可以解决您的问题。b建模,$this->\u xmlResponse->error意味着获取SimpleXMLElement对象中名为error的XML元素。SimpleXMLElement包含已解析的XML,您可以通过每个XML元素的名称访问这些XML。error是一个有效的XML元素的名称,它确实存在于我解析的XML中的SimpleXMLElement对象实例中。代码运行良好,但PHPLint对此表示不满。我得到的不可见错误是由PHPLint生成的,它不是由simplexmlement对象类中的代码生成的。第二条评论仍然相关。在第一种情况下,PHPLint使用反射类来确定该属性是否存在,并且它认为它不存在,这在静态上下文中是正确的。我仍然认为第二个问题是基于注释的,但它可能是同一类问题的一个症状。反射显示没有这样的成员。