$taxonomies = $post->taxonomies()->get();但是当我使用“echo”语句时,它的结果是如下所示的字符串。echo $taxonomies[0];// {"term_taxonomy_id":317,"term_id":317,"taxonomy":"skill","description":"","parent":0,"count":1,"pivot":{"object_id":4886,"term_taxonomy_id":317},"term":{"term_id":317,"name":"Consulting","slug":"consulting","term_group":0}}但是当我使用“print_r”语句时,它的结果是如下所示的对象print_r($taxonomies[0]);Corcel\Model\Taxonomy Object( [table:protected] => term_taxonomy [primaryKey:protected] => term_taxonomy_id [with:protected] => Array ( [0] => term ) [timestamps] => [postType:protected] => [connection:protected] => wordpress [keyType:protected] => int [incrementing] => 1 [withCount:protected] => Array ( ) [perPage:protected] => 15 [exists] => 1....我不清楚它是如何工作的?
2 回答
繁花如伊
TA贡献2012条经验 获得超12个赞
情况是echo
将某个类的 object 转换为string。而你,作为开发者,可以使用魔法方法__toString
来控制这个过程。
深入研究代码,您可以看到Corcel\Model\Taxonomy
扩展了类,而类又扩展了lluminate\Database\Eloquent\Model
。这个类中有一个__toString
方法可以将你的对象转换为 json。
至于print_r
- 该函数不会将对象转换为任何其他类型,只是输出可读的对象表示。
- 2 回答
- 0 关注
- 97 浏览
添加回答
举报
0/150
提交
取消