我在项目中密集使用API数据(PHP Laravel项目)。我的所有数据源都来自不同的API调用而不是数据库。我感觉很糟糕,因为Laravel的Eloquent ORM非常方便使用,但我完全不能使用它们。
我只是想知道是否有一个php包可以自动将api调用数据(多维数组)转换为PHP类对象。
例如,通过使用以下数组:
[id:1, name:'Foo', children: [[id: 5, color: 'green'], [id: 5, color: 'red']]]
转换为:
Class Product {
protected $id;
protected $name;
protected $children;
}
我想它可能需要某种YML文件来指示映射逻辑。
答案 0 :(得分:1)
是的,你可以这样做。排序..
您应该查看Illuminate/Database/Eloquent/Model和Illuminate/Database/Eloquent/Collection类。那些实现了你可能正在寻找的所有接口,比如Jsonable,Arrayable,Countable。
当您从API请求数据时,您可以对模型进行实例化并传递数据。