如何访问类对象中的数组值?

JDe*_*gns 8 php arrays oop scope object

我在函数中有这样的数组:

$value = array("name"=>"test", "age"=>"00");
Run Code Online (Sandbox Code Playgroud)

我在班级abc中将这个$ value公之于众.

现在在我的另一个文件中,我想访问此数组中的值,因此我通过以下方式创建实例:

$getValue = new <classname>;
$getValue->value..
Run Code Online (Sandbox Code Playgroud)

我不知道如何继续,以便我可以访问该数组中的每个元素.

Rob*_*Rob 8

你提到这$value是一个功能,但是是公开的.你可以发布这个函数,或澄清你是否意味着在一个函数中声明或实例化?

如果你实例化它是完全正常的,你可以$value像使用任何其他数组一样使用数组键进行索引:

$object = new classname;
$name = $object->value["name"];
$age = $object->value["age"];

// Or you can use foreach, getting both key and value
foreach ($object->value as $key => $value) {
    echo $key . ": " . $value;
}
Run Code Online (Sandbox Code Playgroud)

但是,如果您正在谈论在函数中声明 public $value那么这是一个语法错误.

此外,如果您$value没有public修饰符的情况下声明(在函数内),那么它的范围仅限于该函数,而不是public.在函数结束时,数组将超出范围,并且所有意图和目的都不再存在.

如果这部分看起来令人困惑,我建议阅读PHP中的可见性.