php如何打印对象的所有属性

有时候在写模块的时候,需要知道可以用哪些属性,怎么样打印出目前该对象拥有的属性?

阅读 25.3k
2 个回答

可以使用 ReflectionClass 类,打印出类的结构。

示例代码:

  class Test
  {
    private $property;
    public $property2;
    protected $property3;
    
    function operation1()
    {
        //to do something...
    }
    function operation2($param)
    {
        //to do something else...
    }
  }
  $a = new Reflectionclass("Test");
  echo "<pre>";
  echo $a;
  echo "</pre>";
?>

输出如下:

  @@ /var/www/html/test.php 2-16

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [0] {
  }

  - Properties [3] {
    Property [  private $property ]
    Property [  public $property2 ]
    Property [  protected $property3 ]
  }

  - Methods [2] {
    Method [  public method operation1 ] {
      @@ /var/www/html/test.php 8 -11
    }

    Method [  public method operation2 ] {
      @@ /var/www/html/test.php 12 - 15

      - Parameters [1] {
        Parameter #0 [  $param ]
      }
    }
  }
} 
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题