【问题标题】:Converting Comma Separated Value to Double Quotes comma separated string将逗号分隔值转换为双引号逗号分隔字符串
【发布时间】:2012-07-05 08:14:57
【问题描述】:

我有一个逗号分隔的值,例如

alpha,beta,charlie

如何转换成

"alpha","beta","charlie"

使用php的单一功能而不使用str_replace?

【问题讨论】:

  • 我不想使用多行代码来执行此操作。我认为php中可能有一个内置函数可以做到这一点

标签: php string double comma


【解决方案1】:

Richard Parnaby-King 函数的替代方案(更短):

function addQuotes($string) {
    return '"'. implode('","', explode(',', $string)) .'"';
}

echo addQuotes('alpha,beta,charlie'); // = "alpha","beta","charlie"

【讨论】:

  • 不仅更短,而且没有无用的循环和字符串连接
  • 嘿 jexat,感谢您的回复,但我正在寻找一个内置功能。但是我认为如果我想要更少的代码行,那么使用 str_replace 是更好的选择。代码在这里: $rolestring = "'".str_replace(",","','",$roles)."'";
【解决方案2】:

怎么样

    <?php
    $arr = spliti(",","alpha,beta,charlie");
    for($i=0; $i < sizeof($arr); $i++)
    $var = $var . '"' . $arr[$i] . '",';

    //to avoid comma at the end
    $var = substr($var, 0,-1);
    echo $var;
?>

功能:

<?php
function AddQuotes($str){
    $arr = spliti(",",$str);
    for($i=0; $i < sizeof($arr); $i++)
    $var = $var . '"' . $arr[$i] . '",';

    //to avoid comma at the end
    $var = substr($var, 0,-1);
    echo $var;
}
AddQuotes("alpha,beta,charlie");
?>

【讨论】:

  • 感谢您的回复,但我正在寻找一个内置函数或非常少的代码行。所以我认为使用 str_replce 更像 $rolestring = "'".str_replace(",","','",$roles)."'";
【解决方案3】:
/**
 * Take a comma separated string and place double quotes around each value.
 * @param String $string comma separated string, eg 'alpha,beta,charlie'
 * @return String comma separated, quoted values, eg '"alpha","beta","charlie"'
 */
function addQuote($string)
{
  $array = explode(',', $string);
  $newArray = array();
  foreach($array as $value)
  {
    $newArray[] = '"' . $value . '"';
  }
  $newString = implode(',', $newArray);
  return $newString;
}

echo addQuote('alpha,beta,charlie'); // results in: "alpha","beta","charlie"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-08
    • 1970-01-01
    • 2020-08-30
    • 1970-01-01
    相关资源
    最近更新 更多