如何从PHP7中的数组中获取元素?
我有下一个代码,我想做的是保存并加载数组中元素的数量,并在我声明的函数中显示它们,但在我声明函数中的构造函数foreach之后,我出现了下一个错误 注意:未定义变量:$COMPLETE\u NAME 但是,如果我在函数save中声明了相同的foreach,我会得到正确的结果如何从PHP7中的数组中获取元素?,php,arrays,Php,Arrays,我有下一个代码,我想做的是保存并加载数组中元素的数量,并在我声明的函数中显示它们,但在我声明函数中的构造函数foreach之后,我出现了下一个错误 注意:未定义变量:$COMPLETE\u NAME 但是,如果我在函数save中声明了相同的foreach,我会得到正确的结果 <?php class Person{ public $name; public $lastName; public function save($name, $lastName){
<?php
class Person{
public $name;
public $lastName;
public function save($name, $lastName){
$COMPLETE_NAME = array(
"NAME" => $name,
"LAST_NAME" => $lastName
);
}
public function show(){
foreach($COMPLETE_NAME as $list){
echo $list;
}
}
}
$person = new Person();
$person->save("nameX", "last nameX");
$person->save("nameY", "last nameY");
$person->show();
?>
这是一个范围问题,而且在覆盖数组时,您也会丢失第二个名称
<?php
class Person{
// define the property as an array
public $names = [];
public function save($name, $lastName){
// use $this to access the property
// also use [] as you call this more than once
$this->names[] = ["name" => $name,"lastname" => $lastName];
}
public function show(){
// foreach over outer array
foreach($this->names as $name){
// echo from the inner array
echo $name['name'] . ' ' . $name['lastname'];
}
}
}
$person = new Person();
$person->save("nameX", "last nameX");
$person->save("nameY", "last nameY");
$person->show();
?>
与所有PHP版本相同,使用:
$this->COMPLETE\u NAME
范围问题