将一些值添加到上一个数组键php

时间:2016-09-15 16:03:06

标签: php arrays append

我以这种方式生成数组:

$sql2 = 'SELECT * FROM agenda ORDER BY start ASC';
$query2 = $pdo->prepare($sql2);
$query2->execute();
$list = $query2->fetchAll();

$inizio ="";
$startdata ="";
$doppioevento = "";
$out = array();
$lastStart = null;
$altroevento = "";
$i = 0;
$len = count($list);

foreach ($list as $rs) {
$titolo = $rs['title'];

      $doppioevento = '<a class="'.$rs['class'].'" style="color:#FFFFFF;">'.$titolo.'</a>';
      $inizio = str_replace('/', '-', $rs['start']);
      $startdata = gmdate('Y-m-d', strtotime($inizio));


  if ($rs['start'] == $lastStart) {
      $doppioevento .= '<br><br><a class="'.$rs['class'].'" style="color:#FFFFFF;">'.$rs['title'].'</a>';
      if ($i == $len - 1) {
        $out[] = array(
        'title' => 'Eventi del '.$inizio,
        'date' => $startdata,
        'badge' => true,
        'body' => $doppioevento.$altroevento,
        'footer' => '-',
        'classname' => 'purple-event'
        );
      } 
      $i++;
      continue;
  } 


      $out[] = array(
        'title' => 'Eventi del '.$inizio,
        'date' => $startdata,
        'badge' => true,
        'body' => $doppioevento.$altroevento,
        'footer' => '-',
        'classname' => 'purple-event'

    );

  $lastStart = $rs['start'];
  $i++;

}

我基本上希望我的数组为每个日期打印一个事件(由数据库检索)。当单个日期中有多个事件时,它应该仅将事件附加到数组的1个键。类似的东西:

$ event =&#34;我是9月20日的第一个事件&#34;,所以:

$out[] = array(
    'title' => 'Eventi del '.$inizio,
    'date' => $startdata,
    'badge' => true,
    'body' => $event,
    'footer' => '-',
    'classname' => 'purple-event'
    );

哦等等,$ event2 =&#34;我是9月20日的另一个事件!&#34;,所以:

$out[] = array(
    'title' => 'Eventi del '.$inizio,
    'date' => $startdata,
    'badge' => true,
    'body' => $event . $event2,
    'footer' => '-',
    'classname' => 'purple-event'
    );

依旧......怎么样?

0 个答案:

没有答案