首页 >后端开发 >php教程 >如何在 PHP 中将 stdClass 对象转换为数组而不丢失行?

如何在 PHP 中将 stdClass 对象转换为数组而不丢失行?

Susan Sarandon
Susan Sarandon原创
2024-11-16 08:31:02816浏览

How to Convert a stdClass Object to an Array Without Losing Rows in PHP?

如何在 PHP 中将 stdClass 对象转换为数组

在 PHP 中将 stdClass 对象转换为数组可能是一项棘手的任务,特别是如果原始对象包含元素本身就是对象。这个问答为这个问题提供了全面的解决方案。

问题

原始问题描述了以下问题:用户无法将 stdClass 对象转换为数组而不删除该对象的行。用户尝试了多种方法,例如使用 (array) $booking、json_decode($booking, true) 和自定义函数,但所有这些方法都导致数组为空。

解决方案

这个问题的解决方案在于使用稍微不同的方法:同时使用 json_encode 和 json_decode 来将对象与 JSON 相互转换。此方法允许保留对象的行。

步骤

  1. 将 stdClass 对象编码为 JSON: 使用 json_encode($booking) 将stdClass 对象转换为 JSON 字符串。
  2. 将 JSON 字符串解码为关联数组: 使用 json_decode(json_encode($booking), true) 将 JSON 字符串转换回关联数组。这会将 stdClass 对象转换为数组,同时保留原始对象的行。

代码

$array = json_decode(json_encode($booking), true);

以上是如何在 PHP 中将 stdClass 对象转换为数组而不丢失行?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn