Php 如果属性有困难,如何访问变量的属性
如何访问此类数据的属性:下面的数据是$live variablePhp 如果属性有困难,如何访问变量的属性,php,laravel,laravel-5,Php,Laravel,Laravel 5,如何访问此类数据的属性:下面的数据是$live variable $live = =array:17 [▼ "sensex" => {#1130 ▼ +"code": "200" +"message": "Success" +"data": {#1131 ▼ +"HIGH": "36551.86" } } "nifty_50" => {#11
$live = =array:17 [▼
"sensex" => {#1130 ▼
+"code": "200"
+"message": "Success"
+"data": {#1131 ▼
+"HIGH": "36551.86"
}
}
"nifty_50" => {#1132 ▶}
"nasdaq" => {#1134 ▶}
我正在尝试访问php中$live
变量的'HIGH'属性值。我已尝试使用以下代码,但出现以下错误:
$live->sensex->data;
错误:
正在尝试获取非对象的属性“sensex”
编辑:
我正在尝试访问此数据结构化数据,它是$live
$data =
{#1139 ▼
+"chart": {#1138 ▼
+"result": array:1 [▼
0 => {#1135 ▼
+"meta": {#1129 ▶}
+"timestamp": array:195 [▶]
+"indicators": {#1137 ▼
+"quote": array:1 [▼
0 => {#1136 ▼
+"open": array:195 [▶]
+"close": array:195 [▶]
+"high": array:195 [▶]
+"volume": array:195 [▶]
+"low": array:195 [▶]
}
]
}
}
]
+"error": null
}
}
现在我如何才能直接访问
+“open”:array:195
?它看起来像一个关联数组,然后您将通过以下方式获取值:
$live["sensex"] // etc.
它看起来有点像一个关联数组,然后您将通过以下方式获得值:
$live["sensex"] // etc.
您需要使用数组语法
$live['sensex']->data;
您需要使用数组语法
$live['sensex']->data;
要访问数组的
索引
,您需要使用['special\u index\u name']
要访问对象的属性
,需要使用->特定的属性名称
在您的例子中,$live
是一个数组
,sensex
是一个对象,数据
也是一个对象
所以。要访问HIGH的值
$live['sensex']->data->HIGH;
要访问数组的索引
,您需要使用['special\u index\u name']
要访问对象的属性
,需要使用->特定的属性名称
在您的例子中,$live
是一个数组
,sensex
是一个对象,数据
也是一个对象
所以。要访问HIGH的值
$live['sensex']->data->HIGH;
这里的$live
是一个数组。实际上,它是一个关联数组。”sensex’是一个类。
从关联数组中获取值的语法:
$var_name["key_name"];
对于Std类,语法为:
$class_name->proparty_name
但我们可以使用关联数组语法从Std类中获取proparty值。所以
$class_name["proparty_name"] is also Valid.
因此,对于您的情况,您可以同时使用:
$live["sensex"]->data->HIGH
$live["sensex"]["data"]->HIGH
$live["sensex"]["data"]["HIGH"]
这里的$live
是一个数组。实际上,它是一个关联数组。”sensex’是一个类。
从关联数组中获取值的语法:
$var_name["key_name"];
对于Std类,语法为:
$class_name->proparty_name
但我们可以使用关联数组语法从Std类中获取proparty值。所以
$class_name["proparty_name"] is also Valid.
因此,对于您的情况,您可以同时使用:
$live["sensex"]->data->HIGH
$live["sensex"]["data"]->HIGH
$live["sensex"]["data"]["HIGH"]
您试图像访问对象属性一样访问sensex密钥,请尝试$live['sense']['data']['HIGH']]
并查看是否有帮助如果您试图像访问对象属性一样访问sensex密钥,请尝试$live['sense']['data']['HIGH']
并查看是否有帮助为什么我无法访问此语法,$live->sensex->data代码>?在php中有Std类(使用箭头$data->key
)和关联数组(使用$data[“key”]
语法)。根据您的数据类型,您需要使用正确的语法。如果我想直接访问sensex的“数据”,正确的方法是什么?哦,我知道了$live[“sensex”]->data代码>因为它是stdClass@KINNARI$live['sensex']->数据
看起来就像这样,为什么我不能使用这个语法,$live->sensex->data代码>?在php中有Std类(使用箭头$data->key
)和关联数组(使用$data[“key”]
语法)。根据您的数据类型,您需要使用正确的语法。如果我想直接访问sensex的“数据”,正确的方法是什么?哦,我知道了$live[“sensex”]->data代码>因为它是stdClass@KINNARI$live['sensex']->数据
看起来像是waygiving me错误,您的回答是“不能将stdClass类型的对象用作数组”
我应该只从HIGH
的值中获取什么?$live['sensex']->data->HIGH你能再次检查我的问题吗?我的问题是编辑的
?回答有误“不能将stdClass类型的对象用作数组”
我应该只从HIGH的值中获取什么?$live['sensex']->data->HIGH你能再次检查我的问题吗编辑的
?你好,是的,你就在这里,但是。。。。我遇到了问题,因为我的数据非常困难。。如果可以的话,我可以在问题中粘贴。我已经添加了编辑的问题。$data->chart->result[0]->indicators->quote[0]->open这可以是语法。但是这里我硬编码了'result'和'quote'的索引。你好,是的,你在这里,但是。。。。我遇到了问题,因为我的数据非常困难。。如果可以的话,我可以在问题中粘贴。我已经添加了编辑的问题。$data->chart->result[0]->indicators->quote[0]->open这可以是语法。但是这里我已经硬编码了'result'和'quote'的索引。你能再次检查我的问题吗?这一次,$live
是一个对象。为什么会这样?$live->result[0]->meta->indicators->quote[0]->open
尝试时出错未定义属性:stdClass::$result
这里有点愚蠢。当您看到+
或-
符号时,请使用->
,因为它们是对象的公共或私有属性。其他的是一个数组的索引,你可以使用['U'U'U'U'U'U'U'U'U'U'U'U'U'U'U索引']来访问。你能再次检查我的问题吗?这一次,$live
是一个对象。为什么会这样?$live->result[0]->meta->indicators->quote[0]->open
尝试时出错未定义属性:stdClass::$result
这里有点愚蠢。当您看到+
或-
符号时,请使用->
,因为它们是对象的公共或私有属性。其他的是数组的索引,您可以使用['whatever\u name\u of\u the\u index']来访问它。