如何用PHP中的数组用单个qoutes列表分隔的逗号创建?

时间:2017-04-18 12:50:31

标签: php arrays implode

这是我的问题,我有这种类型的字符串

04/19/2017, 04/20/2017, 04/26/2017, 04/28/2017

我想输出如下输出

'04/19/2017','04/20/2017','04/26/2017','04/28/2017'

4 个答案:

答案 0 :(得分:1)

<?php
// dates in a string
$data = '04/19/2017, 04/20/2017, 04/26/2017, 04/28/2017';

// break them apart into array elements where the , is
$dates = explode(',', $data);


/* You then have array of dates you can use/display how you want, ie:: */
foreach($dates as $date){
    echo $date. '<br/ >';
}

/* OR select single date */
echo $dates[0];

答案 1 :(得分:0)

$string = "04/19/2017, 04/20/2017, 04/26/2017, 04/28/2017";
$array = explode(", ", $string);
$string = "'".implode("','", $array)."'";

答案 2 :(得分:0)

对于您的具体示例,您可以使用:

$result = preg_replace('%([\d/]+)%sim', '"\1"', $string);

输出:

"04/19/2017", "04/20/2017", "04/26/2017", "04/28/2017"

正则表达式解释:

([\d/]+)

Match the regex below and capture its match into backreference number 1 «([\d/]+)»
   Match a single character present in the list below «[\d/]+»
      Between one and unlimited times, as many times as possible, giving back as needed (greedy) «+»
      A “digit” (any decimal number in any Unicode script) «\d»
      The literal character “/” «/»

"\1"

Insert the character “"” literally «"»
Insert the text that was last matched by capturing group number 1 «\1»
Insert the character “"” literally «"»

Demo

答案 3 :(得分:0)

不使用爆炸和内爆

$string = "04/19/2017, 04/20/2017, 04/26/2017, 04/28/2017"; $string = "'".str_replace(", ","','",$string)."'";