PHP中如何在每两个单词后添加逗号
解决每两个单词后添加逗号的PHP实现方案
嘿,我来帮你搞定这个问题!你现在用的str_replace('', ', ', $mystring)会给每个单词后面都加上逗号,这显然不是你想要的效果。要实现每两个单词后添加逗号的需求,我们可以通过拆分、分组、再合并的思路来完成,具体步骤和代码如下:
实现步骤
- 第一步:把原字符串拆分成单个单词的数组,用正则拆分可以处理可能存在的多个空格问题,避免出现空元素。
- 第二步:使用
array_chunk()函数将单词数组按每2个元素为一组进行分组。 - 第三步:把每组内的两个单词用空格拼接成一个字符串。
- 第四步:将所有分组后的字符串用
,(逗号加空格)连接起来,得到最终结果。
完整代码示例
$mystring = "Hello Brother I am Naeem From Php College."; // 拆分单词,处理首尾空格和多余空格 $words = preg_split('/\s+/', trim($mystring)); // 每两个单词分为一组 $wordPairs = array_chunk($words, 2); // 拼接每组单词,再用逗号分隔所有组 $output = implode(', ', array_map(function($pair) { return implode(' ', $pair); }, $wordPairs)); echo $output;
运行这段代码后,你会得到期望的输出:Hello Brother, I am, Naeem From, Php College.
如果原字符串的单词数量是奇数,比如少一个单词,这个方法也能正常工作,最后一组只会有一个单词,不会出现问题哦。
内容的提问来源于stack exchange,提问作者Naeem Hussain
相关产品推荐
相关产品推荐

