PHP数组对象转换

时间:2012-01-16 05:34:58

标签: php arrays

我有一个对象数组

([date]=>2012-01-09, [count]=>5),
([date]=>2012-01-11, [count]=>7),
([date]=>2012-01-12, [count]=>5)

将数组转换为数组对象或数组

的最佳方法是什么?
([date]=>2012-01-08, [count]=>0),
([date]=>2012-01-09, [count]=>5),
([date]=>2012-01-10, [count]=>0),
([date]=>2012-01-11, [count]=>7),
([date]=>2012-01-12, [count]=>5),
([date]=>2012-01-13, [count]=>0),
([date]=>2012-01-14, [count]=>0)

假设给予启动日期2012-01-08并结束2012-01-14

2 个答案:

答案 0 :(得分:1)

  1. 生成从startdate到enddate的日期
  2. 创建一个空的关联数组来存储您的日期数据。
  3. 逐个遍历#1中生成的所有日期
  4. 如果初始数组中存在当前日期的计数,则将其存储在#2中创建的数组中,否则将计数存储为0,数组键为(string) $currentDate
  5. 步骤#2的数组现在将具有所需的数据。
  6. 将其转换为PHP代码:)

答案 1 :(得分:0)

我不会为你编写代码,但我会为你提供算法

$compArray = new array();

loop from startdate to enddate as date
{
    if (in_array(date, yourarray))
        copy the entry from yourarray to compArray
    else
        enter date into compArray with a count of 0
}