Php 将json_解码转换为对象
我使用json_decode获得以下输出Php 将json_解码转换为对象,php,arrays,json,object,stdclass,Php,Arrays,Json,Object,Stdclass,我使用json_decode获得以下输出 Array ( [0] => Array ( [...] => ... [...] => ... ) [1] => Array ( [...] => ... [...] => ... ) 我想做的是将其导入到一个类中,这样我就可以调用并引用内
Array
(
[0] => Array
(
[...] => ...
[...] => ...
)
[1] => Array
(
[...] => ...
[...] => ...
)
我想做的是将其导入到一个类中,这样我就可以调用并引用内存中的数据
通过研究,我发现:
但是,我不确定stdClass是否是我想要的方式 在数组开始之前放置对象
$arr = Array([0] => Array
(
[...] => ...
[...] => ...
)[1] => Array
(
[...] => ...
[...] => ...
));
$arr = (object) $arr;
在数组开始之前放置对象
$arr = Array([0] => Array
(
[...] => ...
[...] => ...
)[1] => Array
(
[...] => ...
[...] => ...
));
$arr = (object) $arr;
函数定义来自: 考虑到您的JSON字符串
[{“first_name”:“Jason”,“last_name”:“Pass”,[…]
,您必须使用JSON_decode
,其第二个参数设置为TRUE
这意味着JSON字符串中的对象将作为关联数组返回。如果省略第二个参数(或使用默认的假值),您将得到:
array (size=2)
0 =>
object(stdClass)[1]
public 'first_name' => string 'Jason' (length=5)
public 'last_name' => string 'Pass' (length=4)
...
1 =>
object(stdClass)[2]
...
这意味着JSON字符串中的对象将保留为对象
但是,包含您的对象的数组将保持为数组,因为它应该是这样的,您不应该强制它成为对象。这样做没有充分的理由。函数定义来自: 考虑到您的JSON字符串
[{“first_name”:“Jason”,“last_name”:“Pass”,[…]
,您必须使用JSON_decode
,其第二个参数设置为TRUE
这意味着JSON字符串中的对象将作为关联数组返回。如果省略第二个参数(或使用默认的假值),您将得到:
array (size=2)
0 =>
object(stdClass)[1]
public 'first_name' => string 'Jason' (length=5)
public 'last_name' => string 'Pass' (length=4)
...
1 =>
object(stdClass)[2]
...
这意味着JSON字符串中的对象将保留为对象
但是,包含对象的数组仍然是一个数组,因为它应该是这样的,并且您不应该强制它成为一个对象。这样做没有充分的理由。您的JSON字符串是什么样子的?[{“first_name”:“Jason”,“last_name”:“Pass”,[…]您不能只进行JSON_解码($array),(没有第二个选项)或者我遗漏了什么?为什么你不确定stdClass?如果你想让它进入一个用户定义的类,你可以为你的类编写一个构造函数,将数组作为参数,并将值复制到适当的属性中。你的JSON字符串是什么样子的?[{“first_name”:“Jason”,“last_name”:“Pass”,[…]难道你不能只做json_解码($array)(没有第二个选项)或者我遗漏了什么吗?为什么你不能确定stdClass?如果你想让它进入一个用户定义的类,你可以为你的类编写一个构造函数,将数组作为参数,并将值复制到相应的属性中。