使用内爆函数时引用项目

时间:2015-01-15 12:10:40

标签: php arrays

我正在尝试在数组上使用implode函数;并且它工作正常,我返回结果很好,因为它应该假设。我现在想在每个项目的开头和结尾添加额外的引号。

EG:我目前正在将此结果推向内幕:

jan,feb,march,april,etc,etc

相反,我希望引用每个项目:

"jan","feb","march","april","etc","etc"

以下是我用来从我的数组中删除内容的小代码

$selectedMonths = implode(",",array_column($selectedMonths,'id'));

由于它已经是字符串,我在下面的代码中尝试了这个,但它没用。因为它已经是一个字符串,但是当没有添加逗号时,

foreach($selectedMonths as $value){
    array_replace($selectedMonths,array_map('strval', array_slice($value, 0)));
}

最初我得到$selectedMonths作为json数组,我已经在php中使用了json_decode(),并且我在将json数组转换为关联数组后尝试了foreach。但是现在如何在每个逗号分隔值周围添加额外的""

2 个答案:

答案 0 :(得分:3)

这应该适合你:

<?php

    $array = array("jan", "feb", "march", "april", "etc", "etc");
    echo '"' . implode('","', $array) . '"';

?>

输出:

"jan","feb","march","april","etc","etc"

答案 1 :(得分:0)

这听起来像你想要做的,是从你的数组中获取一个JSON字符串?为此,您可以使用json_encode

$json = json_encode($array);

但要为数组中的每个字符串追加并添加引号,可以使用array_map

$array = ["jan","feb","march","april","etc","etc"];
$mapped = array_map($array, function($value) {
    return '"' . $value . '"';
});