我有一种情况,需要接收大量数据以在API中进行处理
接收它的最佳做法是
第一种方法=>创建多个数组,每个数组保存每个字段的数据
$names = ['SAM','John','Vardy'];
$ages = ['19','20','22'];
或 第二种方法=>创建一个数组,每个索引都有自己的对象
$data = [
{
'name':'SAM',
'age':'19'
},
{
'name':'John',
'age':'20'
},
{
'name':'Vardy',
'age':'22'
},
];
什么是最好的之一?
答案 0 :(得分:0)
这确实取决于您的需求,但是对我来说,第二种方法似乎更加一致。
答案 1 :(得分:0)
“更好”是一个主观术语,在此网站上,我们处理客观标准。因此,首先,让我们定义这种情况下的“更好”:
现在,如果创建的数组每个都包含n个元素,并且所有第n个元素都是相互关联的,那么您将始终必须处理某些特定的数组,因此这实际上不是可重用的。您可以编写一些函数来减轻一些负担,但这并不能改变您将始终需要处理某些特定列的事实。如果您有一个数组,其中每个元素代表一组字段名字段/值对,则可以重用。您只需要跟踪列名和值,而不是为每个列名创建一个数组。
第一种方法很难维护,因为每当需要新字段,更改字段名称或删除某些字段时,都将不得不重新读取整个代码块。在第二种方法中,您将只处理一些字段。
第一个很难理解。索引是一个数字,什么也不会告诉您,为了理解一个实体,您将必须将实体所有数组的第n个元素粘合在一起,这是第二种方法的免费功能。
第一种方法非常不可靠。如果由于错误而从数组中删除一项而不从另一个数组中删除某个项目,那么您的代码将给人以某些项目与错误的对相关的印象。
因此,让我们有一个包含字段名称字段/值对的数组,您还可以实现一些帮助函数,以验证,添加,删除或更新项目。