PHP无法获取准备为以下内容的动态对象的值:
$abc->{$dynamic_object_pattern}
变量 $ dynamic_object_pattern 的值为 json-> {'data_1'}-> {'value'}
对我来说,PHP 7.1正在理解如下所示的静态定义的模式,并按需获取值:
$abc->json->{'data_1'}->{'value'}
但是当我将整个部分放入变量然后尝试获取其值时,情况并非如此。我尝试过,
$ abc-> {$ dynamic_object_pattern} 和 $ abc-> $ dynamic_object_pattern
两种方法,但尚无解决方案。 错误来自 通知:未定义的属性:stdClass :: $ json-> {'data_1'}-> {'value'}答案 0 :(得分:1)
我正在尝试答案而没有看到您的JSON数据
您在这里说:
但是当我将整个部分放入变量然后尝试 获得价值
仅从该行开始,听起来您就在尝试从字符串而不是数组中获取值。如果将整个部分放入变量中,PHP会将其解释为字符串。确保在新创建的变量之前添加array()
。
自然数组:
$array = array();
现在是一个字符串
$variable = $array;
将字符串转换为数组
$new_array = array($variable);
还,您是否尝试过解码?
// decode
$response = json_decode($new_array, true);
//print out
var_export(array_unique(array($response)));