使用PHP变量

时间:2019-06-23 20:49:52

标签: php object dynamic

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'}

1 个答案:

答案 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)));