优化数组函数
Optimize an array function
这里是测试代码的例子。我想知道如何优化这段代码,知道在我的开发代码中,原始数组来自我检索的 API ,然后我根据我的需要和计算在 class 中使用函数方法进行转换(在 $rep
中有很多使用三元运算符的转换)。这里的示例是为了简单起见:
当你调用函数testArray()
几百次的时候,计算时间就开始变长,太长了。不知道有没有办法优化这个,代码更优雅
$data = array(
"lemon" => 'test1',
"tomato" => 'test2',
"cofee" => 'test3',
"tree" => 'test4'
);
function testArray($data)
{
$rep = array(
'yellow' => $data['lemon'],
'red' => $data['tomato'],
'brown' => $data['cofee'],
'green' => $data['tree']
);
return $rep;
}
echo testArray($data)['yellow']; // test1
echo testArray($data)['red']; // test2
echo testArray($data)['brown']; // test3
echo testArray($data)['green']; // test4
谢谢,我在寻找更有效的方法时遇到了一些困难。
您不需要多次调用该函数。只需将它存储到一个变量中,稍后再使用它。
$data = array(
"lemon" => 'test1',
"tomato" => 'test2',
"cofee" => 'test3',
"tree" => 'test4'
);
function testArray($data)
{
$rep = array(
'yellow' => $data['lemon'],
'red' => $data['tomato'],
'brown' => $data['cofee'],
'green' => $data['tree']
);
return $rep;
}
$transformedData = testArray($data);
echo transformedData['yellow']; // test1
echo transformedData['red']; // test2
echo transformedData['brown']; // test3
echo transformedData['green']; // test4
这里是测试代码的例子。我想知道如何优化这段代码,知道在我的开发代码中,原始数组来自我检索的 API ,然后我根据我的需要和计算在 class 中使用函数方法进行转换(在 $rep
中有很多使用三元运算符的转换)。这里的示例是为了简单起见:
当你调用函数testArray()
几百次的时候,计算时间就开始变长,太长了。不知道有没有办法优化这个,代码更优雅
$data = array(
"lemon" => 'test1',
"tomato" => 'test2',
"cofee" => 'test3',
"tree" => 'test4'
);
function testArray($data)
{
$rep = array(
'yellow' => $data['lemon'],
'red' => $data['tomato'],
'brown' => $data['cofee'],
'green' => $data['tree']
);
return $rep;
}
echo testArray($data)['yellow']; // test1
echo testArray($data)['red']; // test2
echo testArray($data)['brown']; // test3
echo testArray($data)['green']; // test4
谢谢,我在寻找更有效的方法时遇到了一些困难。
您不需要多次调用该函数。只需将它存储到一个变量中,稍后再使用它。
$data = array(
"lemon" => 'test1',
"tomato" => 'test2',
"cofee" => 'test3',
"tree" => 'test4'
);
function testArray($data)
{
$rep = array(
'yellow' => $data['lemon'],
'red' => $data['tomato'],
'brown' => $data['cofee'],
'green' => $data['tree']
);
return $rep;
}
$transformedData = testArray($data);
echo transformedData['yellow']; // test1
echo transformedData['red']; // test2
echo transformedData['brown']; // test3
echo transformedData['green']; // test4