访问GROUP_CONCAT的各个记录

时间:2017-10-23 18:33:36

标签: php mysql laravel group-concat

我正在使用GROUP_CONCAT函数将记录分组,用逗号分隔。我正在使用它

GROUP_CONCAT(DATE_FORMAT(datetime, ' %H:%i ')) as time)

它运作良好。我得到了这样的结果

08:55 , 13:30 , 10:30 , 17:00 , 15:30 , 10:00

现在,我想要做的是,我想选择此分组结果的各个元素,并将其放在链接中,以便为特定URL传递不同的值。

这样的东西
<a href="/timeaction/{value}">08:55</a>
<a href="/timeaction/{value}">13:30</a>

所以,基本上,我希望每个时候都有一个单独的可点击链接,该链接转到某个URL,具有它的价值。它的价值将是时间本身。最好我想使用foreach循环,类似这样的

foreach($time as $times){
<a href="/timeaction/$times">$times</a>
}

我该怎么做?我使用Laravel作为模板引擎。

1 个答案:

答案 0 :(得分:2)

如果将字符串转换为数组,则可以遍历它们:

$timeStr = '08:55 , 13:30 , 10:30 , 17:00 , 15:30 , 10:00';
$times = explode(',', $timeStr); // converts string to array
foreach($times as $time) {
    $cleanTime = trim($time); // cleanup the  spaces
    echo "<a href='/timeaction/$cleanTime'>$cleanTime</a>";
}

这将返回:

<a href='/timeaction/08:55'>08:55</a>
<a href='/timeaction/13:30'>13:30</a>
<a href='/timeaction/10:30'>10:30</a>
<a href='/timeaction/17:00'>17:00</a>
<a href='/timeaction/15:30'>15:30</a>
<a href='/timeaction/10:00'>10:00</a>