class A extends B {
    public function __construct($config) {
        foreach ($config as $k => $v) {
            echo $k;
            var_dump(isset($this->$k));
            if (isset($this->$k)) {
                $this->$k = $v;
            }
        }
        exit;
class B {
    public $appid;
    public $templateId;
    public $api;
    public $accountSid;
    public $token;
    public $version;
打印的结果
appidbool(false)
templateIdbool(false)
apibool(false)
accountSidbool(false)
tokenbool(false)
versionbool(false)
isset($this->$k) 为什么是false
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
用isset()判断一个不存在的值或是值为NULL的变量,将返回false。
在基类B中,只是声明了appid等变量,没有赋具体的值。