这是我正在做的事情:
$dateRange = array('2010-01-01', '2010-01-02', '2010-01-03', ...);
$data = array('2010-01-01' => 5, '2010-01-03' => 7);
foreach ($dateRange as $date) {
$values[$date] = $data[$date];
}
Run Code Online (Sandbox Code Playgroud)
$values 结果是:
array (
'2010-01-01' => 5
'2010-01-02' => null
'2010-01-03' => 7
...
)
Run Code Online (Sandbox Code Playgroud)
看起来相当有效,但我想知道是否有一个简单的PHP函数可以处理这个问题.
$values = array_merge(array_fill_keys($dateRange, null), $data);
Run Code Online (Sandbox Code Playgroud)
是否真的更高效只能通过测试找到,但我会说它更简洁,易于理解,并且它不会为不存在的密钥引发错误$data.:)