为什么我不能在PHP中回显这个多维数组的值?
这是如此难以置信的基本,以至于我完全不明白为什么它不起作用。我有一个名为为什么我不能在PHP中回显这个多维数组的值?,php,multidimensional-array,Php,Multidimensional Array,这是如此难以置信的基本,以至于我完全不明白为什么它不起作用。我有一个名为$elements的数组,我只想回显其中一个值 我使用NetBeans作为IDE,如果我使用它来检查所讨论的多维数组的内容,它看起来是这样的: 据我所知,一切都很正常。它是一个多维数组,其中第一个级别编号为“0”,第二个级别有四个命名条目 我只想回显“parameters”的值,它是一个字符串 但是,此代码不输出任何内容: echo "This is the value of 'parameters': " . $ele
$elements
的数组,我只想回显其中一个值
我使用NetBeans作为IDE,如果我使用它来检查所讨论的多维数组的内容,它看起来是这样的:
据我所知,一切都很正常。它是一个多维数组,其中第一个级别编号为“0”,第二个级别有四个命名条目
我只想回显“parameters”的值,它是一个字符串
但是,此代码不输出任何内容:
echo "This is the value of 'parameters': " . $elements[0]['parameters'];
我把这个最基本的代码弄错了吗
这就是我做
var\u dump($elements)
得到的结果:
数组(1){[0]=>对象(元素)#3(4){[“类型”:“元素”:私有]=>
字符串(4)“文本”[“资源”:“元素”:私有]=>字符串(1)“0”
[“参数”:“元素”:私有]=>字符串(209)“IP1111.111.111.111
IP2 222.222.222.222 IP3 333.333.333 IP4 444.444.444 IP5
555.555.555.555 IP6 666.666.666.666 IP7 777.777.777 IP8 888.888.888.888 IP9 999.999.999 IP10 111.111.111.112“[“父”:“元素”:private]=>NULL}”
。。。这是打印($elements)的输出:
$elements
处的条目0不仅仅是一个属性数组,它是一个类元素
实例,因此要访问其属性,请执行以下操作:
echo( $elements[ 0 ]->parameters );
虽然
parameters
字段似乎是私有的,但是您最好向对象添加一个访问器方法,如getParameters()
将是公共的,并返回参数值。条目0位于$elements
不仅仅是一个属性数组,它是一个类元素
实例,因此要访问其属性,请执行以下操作:
echo( $elements[ 0 ]->parameters );
虽然
parameters
字段似乎是私有的,但您最好向对象添加一个访问器方法,如getParameters()
,该方法将是公共的,并返回参数值。您的var转储表明元素0是一个对象,因此您需要像这样访问它:
echo $elements[0]->parameters;
问题在于,从转储中,参数
元素被标记为private,因此您将无法访问它
解决办法是:
- 将参数更改为公共
- 编写一个getter(
)并使用该方法获取参数getParameters()
echo $elements[0]->parameters;
问题在于,从转储中,参数
元素被标记为private,因此您将无法访问它
解决办法是:
- 将参数更改为公共
- 编写一个getter(
)并使用该方法获取参数getParameters()