Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php OOP中使用$this可以访问未定义公共属性的对象_Php_Oop_Php 7 - Fatal编程技术网

在php OOP中使用$this可以访问未定义公共属性的对象

在php OOP中使用$this可以访问未定义公共属性的对象,php,oop,php-7,Php,Oop,Php 7,我正在尝试这样做: <?php class Circle{ //public $radious=1; function SetRadius($param) { $this->radious=$param; } function AreaOfCircle(){ return $this->radious * $this->radious * M_PI; } } $obj=new Circle()

我正在尝试这样做:

<?php
class Circle{
    //public $radious=1;
    function SetRadius($param)
    {
        $this->radious=$param;
    }
    function AreaOfCircle(){
        return $this->radious * $this->radious * M_PI;
    }
}
$obj=new Circle();
$obj->SetRadius(5);
echo $obj->AreaOfCircle(); //78.539816339745
?>

我在类级别定义了一个属性:
但当我评论这个(radius)属性时,程序运行良好。但是根据oop概念,它应该返回错误:“undefined property”。但我知道它在没有定义属性的情况下运行良好有人能帮我解释一下它为什么工作吗?我知道了这个概念。

PHP类与其他语言不同,在其他语言中,成员变量需要作为类声明的一部分指定。PHP类成员可以随时创建