我有一个字符串(不是数组,它是存储在一个字符串中的一堆单词),我想在每个单词后面放一个逗号,但不要在最后一个单词后面放一个逗号。我有;
echo str_replace(' ', ', ', $stilltodo);
但由于某种原因,在逗号之前添加了一个空格(也在逗号之后添加了一个空格,但这是正确的),并且在末尾也添加了一个空格。我怎样才能改变它以我想要的方式工作。
“base”字符串的示例
French History Maths Physics Spanish Chemistry Biology English DT Maths History DT Spanish English French RS
使用上述代码的电流输出示例
French , History , Maths , Physics , Spanish , Chemistry , Biology , English , DT , Maths , History , DT , Spanish , English , French , RS ,
试试这个:
$newstring = implode(", ", preg_split("/[\s]+/", $oldstring));
preg_split()
会将字符串拆分为一个数组,而 implode()
会将其全部折叠回单个字符串。 preg_split()
中使用的正则表达式将处理单词之间可能有多个空格的任何情况。
implode(', ', explode(' ', $base_string));
使用内爆/爆炸。
$t = "French History Maths Physics Spanish Chemistry";
// turn this into an array
$a = explode(" ", $t );
// output without final comma
echo implode(", ", $a );
应该可以满足您的需求:“法语、历史、数学、物理、西班牙语、化学”
rtrim()
:
echo rtrim(str_replace(' ', ', ', $stilltodo, ',');
这将从字符串末尾删除所有逗号。我已将
str_replace()
包装在 rtrim()
函数中以使其保持在一行上,但将其分成两部分可能会更清晰。
在字符串中添加逗号,没有任何功能......其简单且 100% 有效
<?php
$arr = array(1,2,3,4,6,8,8,8,9);
$str = '';
foreach ($arr as $key => $value) {
$str = ($str == '' ? '' : $str . ',') . $value;
}
echo $str;
在 PHP 中
令数组为,
$lists=Array ( [0] => 12 [1] => 9 [2] => 10 [3] => 8 )
我们希望它打印为
12,9,10,8
只需使用
implode
,
语法:
implode(glue, pieces)
$items=implode( $lists, ",");