从PHP中删除逗号

时间:2012-05-08 19:19:41

标签: php string str-replace strip

我有一个存储在PHP变量中的动态值。该变量包含一串数据,表示单击了哪些复选框。它返回如下:Option1,Option2,Option3,Option4 .....

我想删除逗号,所以它只是Option1 Option2 Option3 Option4 ....

我的代码:

<?php 
    $type = the_field('type_of_work'); 
    $type = str_replace(",", "",$type);
    echo $type; 
?> 

出于某种原因,逗号仍在呈现中。知道为什么或如何解决这个问题?您知道,the_field('type_of_work')是一种从wordpress'后端提取高级自定义字段的方法,但不应该与此问题相关,因为它正在使用逗号成功重新调整字符串。有什么想法吗?

更新:我会采用不同的方式:

if(in_array('brand-id', get_field('type_of_work') )): 
    echo "brand-id";
endif; 

echo " ";

if(in_array('print', get_field('type_of_work') )): 
    echo "print";
endif;

等......

5 个答案:

答案 0 :(得分:5)

还有一些你不包括的东西。您发布的代码完美无瑕。如果你仍然看到逗号,那么其他东西就在这里发挥作用。

<?php 
    $type = the_field('type_of_work'); 
    $type = str_replace(",", "",$type);
    echo $type; 
?> 

这是die的完美时间,所以你肯定知道。

<?php
die(str_replace(',', '',the_field('type_of_work')));
?> 

答案 1 :(得分:2)

虽然您提供的代码应该完美无缺,但我建议您使用此代码:

$type = explode(',', $type);

这将把它变成一个值数组。单独trim()每个值也是个好主意。

所以,而不是:

$item = 'Item1 Item2 Item3';

你会得到一个数组:

$item = array('Item1', 'Item2', 'Item3'); // Assuming each value is `trim()`ed

答案 2 :(得分:0)

正则表达式替换

preg_replace("/,/", "", $string);

答案 3 :(得分:0)

您可以尝试将它们爆炸成阵列,然后将它们重新爆发出来......

$split = "super,cali,fragilistic,expi,alidocious";
$arr = explode(",",$split);
$finalStr = implode(" ",$arr);
echo $finalStr;

super cali fragilistic expi alidocious


implodeexplode的文档。

答案 4 :(得分:0)

这就是诀窍:

<?php
$type = get_field('type_of_work');
$type = implode(' ', $type);
echo $type;
?>

或者简单地说:

<?php echo implode(' ', get_field('type_of_work')); ?>

因为get_field是一个数组。