数据库中的巨大数组,其他建议


huge array in database, other suggestions?

我怀疑我的方法是否是最好的。不知何故,我想以这种格式存储一个数组:

array( 
 year => array( 
         jan => array( day1 => 0, day2 => 0, and so on )
 );

这是我生成它的代码:

$array = array(
);
for( $y = date( 'Y' ); $y <= date( 'Y' ); $y++ )
{
    $array[ $y ] = array();
    for( $m = 0; $m < 11; $m++ )
    {
        $array[ $y ][ substr( GetMonthName( $m ), 0, 3 ) ] = array();
        for( $d = 0; $d < cal_days_in_month( CAL_GREGORIAN, $m+1, $y ); $d++ )
            $array[ $y ][ substr( GetMonthName( $m ),  0, 3 ) ][ $d ] = 0;
    }
}

这会生成一个相当大的数组,假设它每新一年都会添加一个新数组,那么这个数组就会变得非常大。

我需要将其保存到数据库中的id中,因此id数据1(此处为巨大阵列)

我该怎么办?

您应该考虑只存储所需的数据,而不是一年中的一整天。例如:

id=101, data="2015-02-05"
id=101, data="2015-02-07"