在每个数组中使用双引号和逗号分隔符

时间:2018-08-07 09:16:05

标签: php mysql

这是我的代码:

    <?php
$sss = "SELECT tanggal_awal FROM libur_nasional GROUP BY tanggal_awal ASC";
$qqq = mysqli_query($konek,$sss);
$arr = array();
while ( $tam = mysqli_fetch_array($qqq)) {
    $date = $tam['tanggal_awal'];
    $reformat_date =  date("n-j-Y", strtotime($date));
    $arr[] = $reformat_date; 
}
$array_date = implode(",", $arr);

?>



> output : 8-9-2018,8-10-2018,8-17-2018
> output i want to is : "8-9-2018", "8-10-2018", "8-17-2018"

有人可以帮我得到我想要的输出,谢谢。

2 个答案:

答案 0 :(得分:2)

您可以使代码更短:

$sss = "SELECT tanggal_awal FROM libur_nasional GROUP BY tanggal_awal ASC";
$qqq = mysqli_query($konek,$sss);

while ( $tam = mysqli_fetch_array($qqq)) {
    $arr[] =  date("n-j-Y", strtotime($tam['tanggal_awal']));
}
$array_date = '"' . implode('", ', $arr) . '"'; 

在php中,无需在将值推入数组之前声明一个数组。
不需要您的$date变量,因为它只是$tam['tanggal_awal']值的副本。
也不需要$reformat_date,因为您可以将其直接放置在数组中。
内插法是放置在项目之间的位置,只需在字符串的每一端添加",就可以了。{p>

答案 1 :(得分:0)

$arr=['8-9-2018','8-10-2018','8-17-2018'];

$array_date = '"'.implode('", "', $arr) . '"';
echo $array_date;

输出---> “ 8-9-2018”,“ 8-10-2018”,“ 8-17-2018”

尝试像这样破坏您的数组。