我有一个父数组,其中包含
年作为
1994年,
1995年,
1996年,
1997年,
1998年,
1999年,
2000年,
2005
Results being Generated by sql +----------------+ YEAR | Count 1994 | 16 1995 | 16 1996 | 16 +----------------+
数组应存储以下值,以检查 sql 查询结果是否包含父数组年份的结果
1994 | 16 1995 | 16 1996 | 16 1997 | 0 1998 | 0 1999 | 0 2000 | 0 2005 | 0
谢谢, 注意我希望如上所述在数组中生成结果,因为我必须将这些值传递给 highcharts(用于生成图表)
最佳答案
取决于$years_db
的构建方式,这里是一个例子:
$years = array(1994, 1995, 1996, 1997, 1998, 1999, 2000, 2005);
$years_db = array(1994 => 16, 1995 => 16, 1996 => 16);
$array_temp = array();
foreach ($years as $year)
{
/* if (in_array($year, array_keys($years_db)))
* $array_temp[$year] = $years_db[$year];
* else
* $array_temp[$year] = 0;
*/
// @gumbo suggestion is more efficient. THX!
$array_temp[$year] = isset($years_db[$year]) ? $years_db[$year] : 0;
}
output of $array_temp:
array (
1994 => 16,
1995 => 16,
1996 => 16,
1997 => 0,
1998 => 0,
1999 => 0,
2000 => 0,
2005 => 0,
)
关于php - 根据父数组的结果填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14090929/