gpt4 book ai didi

php - 如何从 PHP 类中判断变量是公共(public)变量还是私有(private)变量?

转载 作者:可可西里 更新时间:2023-10-31 22:49:45 24 4
gpt4 key购买 nike

如果我知道要搜索什么,我相信我可以在 PHP.net 上找到它!

基本上,我试图从一个类中循环遍历所有公共(public)变量。

为了简化事情:

<?PHP 
class Person
{
public $name = 'Fred';
public $email = 'fred@example.com';
private $password = 'sexylady';

public function __construct()
{
foreach ($this as $key=>$val)
{
echo "$key is $val \n";
}
}
}

$fred = new Person;

应该只显示 Fred 的姓名和电子邮件....

最佳答案

使用Reflection .我修改了 PHP 手册中的一个示例以获得您想要的内容:

class Person
{
public $name = 'Fred';
public $email = 'fred@example.com';
private $password = 'sexylady';

public function __construct()
{
$reflect = new ReflectionObject($this);
foreach ($reflect->getProperties(ReflectionProperty::IS_PUBLIC) as $prop)
{
$propName = $prop->getName();
echo $this->$propName . "\n";
}
}
}

关于php - 如何从 PHP 类中判断变量是公共(public)变量还是私有(private)变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2206717/

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