很多站长朋友们都不太清楚打印php类成员,今天小编就来给大家整理打印php类成员,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 关于 php 类成员属性声明和访问的问题 2、 PHP如何打印一个类的所有静态属性 3、 PHP中如何定义类及其成员属性与操作 关于 php 类成员属性声明和访问的问题你总共提了三个问题,三个问题都是关于访问权限控制的,建议你将面向对象的访问权限控制的那部分给学习一下。
(1)类里的变量是否一定要声明为成员属性,
答:不一定,在一个类中,有构造函数、属性、方法;未在方法和构造函数中声明的变量为属性,属性是体现这一个类(对象)的特性的描述,他是这个类的特性的描述,这个类的状态的改变将会随着这些属性值的改变而改变。如果某一变量不属于这个类的属性,当然可以声明在别的地方,只要在访问权限内,当然也可以访问,就像foreach($this->post as $key=>$value),$key与$value都不是类的属性,当然不用声明在类的属性部分了,这里的$key与$value便成了这个方法的局部变量。
(2)非类的属性,绝对不能用$this->来访问,$this指的是当前对象,$this->所指向的是当前对象的属性或许方法,既然不是类的属性,当然不能用$this->来访问了,
PHP如何打印一个类的所有静态属性//只显示public的
var_dump(get_object_vars($test));
//显示所有的(public, private, protected),需要在类中添加public方法:
public function get_all_vars()
{
var_dump(get_object_vars($this));
}
//显示static的
class abc
{
public static $instance='hello';
}
function get_all_static($className)
{
$r = new ReflectionClass($className);
var_dump($r->getStaticProperties());
}
get_all_static("abc");
PHP中如何定义类及其成员属性与操作实测
php中,在类里边可以定义属性
class
a
{
public
$name;
public
$type;
}
在类中不能定义属性,但是可以定义变量,并将其赋给他所在类的属性
class
a
{
public
$name;
function
b(){
$othername
=
1;
$this->name
=
$othername;
}
}
$a
=
new
a();
$a->b();
echo
$a->name;
最后,祝新年快乐
关于打印php类成员的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于打印php类成员 php打印方式的详细内容...