gpt4 book ai didi

php - 抛出异常后无法访问类的属性

转载 作者:行者123 更新时间:2023-12-04 04:32:23 25 4
gpt4 key购买 nike

我有一个 PHP 类,在这个例子中我只是调用 MyClass .如果这个类出现问题,它会抛出一个我正在捕捉的异常。在这个 catch block 中,我需要访问 MyClass 的一些公共(public)类属性。但由于某种原因,他们都返回 NULL .代码如下。

try {
$myClass= new \sys\global\MyClass($id);
} catch (Exception $e) {
die(var_dump($myClass->reading));
}

以上为打印 NULL到页面,即使 readingMyClass 的公共(public)属性(property):
namespace sys\global;

class MyClass {
public $reading = 10;

// ... other class code
}

我什至做过 die(var_dump($this->reading))在抛出异常之前的类中,它的值为 10 .

在类中抛出异常会破坏它吗?

最佳答案

如果在构造函数中抛出异常,则不会创建对象。即您无法访问不存在的对象的属性。

关于php - 抛出异常后无法访问类的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20371250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com