嗨,我正在探索周围&找到导致我出错的东西。
我的脚本正在制作一个json格式,以最简单的方式阅读和编码我发现了这个。
$animal->dog = "dalmatian";
$animal->cat = "persian";
echo json_encode($animal);
此脚本导致我出错:
警告:从空值
创建默认对象
在stackoverflow中搜索后,我找到了一个使用stdClass的解决方案。
解决方案:
$animal = new stdClass;
这可以解决错误,但我的脚本上有很多OBJECTS我会在stdClass上声明每个对象吗?
LIKE
$animals = new stdClass;
$mammals = new stdClass;
有没有办法获得每个空的OBJECT并动态声明为stdClass?
答案 0 :(得分:2)
这可能会有所帮助 -
$animal = (object) array();
$animal->dog = "dalmatian";
$animal->cat = "persian";
echo json_encode($animal);
或者您可以将它们存储到数组 -
$animal['dog'] = "dalmatian";
$animal['cat'] = "persian";
echo json_encode($animal);
将它们存储到数组将起作用。如果你想让它成为一个物体,那就简单地施展它。
$animal = (object) $animal;