Создайте массив / коллекцию / список (Date, Value) в PHP

Я пишу PHP-скрипт, где входы:

From date To date 

Затем я хочу использовать этот диапазон дат и создать массив, который имеет:

 Array(date,x) 

Когда я добавляю каждую дату в массив, я буду вычислять значение, которое идет с ним.

С .NET я бы (в верхней части моей головы) использовал словарь, где дата была ключом, а x – значением.

Основной задачей является получение этого диапазона дат, а затем разделение этого диапазона на массив или словарь какого-либо рода (что было бы идеальным в php)

Поскольку я добавляю его в массив, я сбегу от некоторого другого кода, который я уже написал, который вычисляет значение, которое следует использовать с этой датой

В конце всего этого, когда он добавлен туда, мне нужно будет проходить через массив или список и добавить все значения x вместе.

    вы можете попробовать это

     функция makeDateRange ($ from, $ to, $ pattern = 'md-y')
     {
         $ day = date ($ pattern, $ from);
         $ to = date ($ pattern, $ to);
         $ parseDate = date_parse ($ from);
         while ($ day <= $ to) {
             $ day = mktime (0,0,0, $ parseDate ["month"], $ parseDate ["day"] + 1, $ parseDate ["year"]);
             $ dateArray [] = дата ($ pattern, $ day);
             }
         return $ dateArray;
     } 

    // здесь make array
    $ keys = makeDateRange ("12-01-11", "12-02-11");

    // здесь делаем выше массив как ключ в $ массиве
    $ a = array_fill_keys ($ keys, 'none');
    print_r ($ а);

    (Непроверенные)

     function dateArray($from, $to, $value = NULL) { $begin = new DateTime($from); $end = new DateTime($to); $interval = DateInterval::createFromDateString('1 day'); $days = new DatePeriod($begin, $interval, $end); $baseArray = array(); foreach ($days as $day) { $dateKey = $day->format("Ymd"); $baseArray[$dateKey] = $value; } return $baseArray; } $datesArray = dateArray('2011-01-01', '2011-03-31',true); 

    Если я правильно вас понимаю, вы можете использовать для этого ассоциативный массив:

     array( '00-00-00' => $value, '01-01-01' => $value, // etc... ); 

    Или вы можете создать его так:

     $myArray = array(); $myArray['00-00-00'] = $value; $myArray['01-01-01'] = $value; 

    Вы можете заполнить их, запустив цикл …