【问题标题】:How to combine 4 arrays into one如何将4个数组合并为一个
【发布时间】:2015-08-29 00:57:29
【问题描述】:
// get date this week

$W = date('W',strtotime(date('Y-m-d'))); 
$sunday = date(datetime::ISO8601, strtotime(date('Y') . "W" . $W . "0")); 
$this_week = date('Y-m-d',strtotime($sunday));
echo $this_week;

//looping for get all date this week

for ($i=1; $i <= 6; $i++) { 
    $date=date_create("$this_week");
    date_add($date,date_interval_create_from_date_string("$i days"));

    $date_week[] = date_format($date,"Y-m-d"); //value array
    $event[] = "dinner"; // value array
    $start[] = "start"; // key array
    $title[] = "title"; // key array

}

我想把它改成这样的json

        {
            title: 'dinner',
            start: '2015-08-24'
        },
        {
            title: 'dinner',
            start: '2015-08-25'
        },
        {
            title: 'dinner',
            start: '2015-08-26'
        },
        {
            title: 'dinner',
            start: '2015-08-27'
        },
        {
            title: 'dinner',
            start: '2015-08-28'
        },
        {
            title: 'dinner',
            start: '2015-08-29'
        }

【问题讨论】:

  • 使用array_combine()

标签: php arrays json combinations


【解决方案1】:

我觉得这个更好... = 这仍在循环中。

$output[] = [
    'tile' => 'Dinner',
    'start' => $date_week
];

这仍在循环中。 然后在 json_encode 中。

【讨论】:

    【解决方案2】:

    您不需要组合所有这些数组。您可以在一个简单的循环中构建您想要的所有数据结构

    $W = date('W',strtotime(date('Y-m-d'))); 
    $sunday = date(datetime::ISO8601, strtotime(date('Y') . "W" . $W . "0")); 
    $this_week = date('Y-m-d',strtotime($sunday));
    
    
    $result = array();
    
    for ($i=1; $i <= 6; $i++) { 
        $date=date_create($this_week);
        date_add($date,date_interval_create_from_date_string("$i days"));
    
        $result[] = array('title' => 'dinner', 'start' => date_format($date,"Y-m-d"));
    }
    
    echo json_encode($result);
    

    结果是

    [
        {"title":"dinner","start":"2016-11-21"},
        {"title":"dinner","start":"2016-11-22"},
        {"title":"dinner","start":"2016-11-23"},
        {"title":"dinner","start":"2016-11-24"},
        {"title":"dinner","start":"2016-12-25"},
        {"title":"dinner","start":"2016-12-26"}
    ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多