如何从PHP中的单词之间的字符串中删除空格

时间:2012-06-23 17:04:53

标签: php arrays printing echo

我想删除数组之间的空格,但是我使用了不同的代码,例如trim,但它没有删除。我认为因为修剪来自于外部空间而不是文字之间。我正在使用PHP。

这是针对R的,但是像这样:How to remove all whitespace from a string?

我已将代码更改为:

<?php

function combinations($arr, $n)
{
    $res = array();

    foreach ($arr[$n] as $item)
    {
        if ($n==count($arr)-1)
            $res[]=$item;
        else
        {
            $combs = combinations($arr,$n+1);

            foreach ($combs as $comb)
            {
                $res[] = "$item $comb";
            }
        }
    }
    return $res;
}

$words = array(array(
'PY7AD022031',
'AD022031',
'CB5A09XQXU',
),array(
'HELLO', 
'3040',
'3022031',
'07W11',
'4170B',
'0682',
'35570401',
'103448',
), array(
'HELLO', 
'3040',
'3022031',
'07W11',
'4170B',
'0682',
'35570401',
'103448',
));

$combos = combinations($words,0);  

$comma_separated = implode("<br />", $combos);
print("<pre>".print_r($comma_separated,true)."</pre>");
//var_dump($combos);
?>

它回声

PY7AD022031 HELLO HELLO
PY7AD022031 HELLO 3040
PY7AD022031 HELLO 3022031
PY7AD022031 HELLO 07W11
PY7AD022031 HELLO 4170B

但我想要

PY7AD022031HELLOHELLO
PY7AD022031HELLO3040
PY7AD022031HELLO3022031
PY7AD022031HELLO07W11
PY7AD022031HELLO4170B

3 个答案:

答案 0 :(得分:3)

只需更改语法

即可
$res[] = "$item $comb";

进入这种语法:

$res[] = "$item$comb";

删除$ res中的空格。

你尝试过吗?


http://nanamo3lyana.blogspot.com/

答案 1 :(得分:0)

不要使用 print_r()因为函数本身会添加空格,无论你做什么......

只需遍历数组并打印所有元素。

foreach($words as $element) {

    if (is_array($element)) {
        foreach($element as $v) {
            echo trim($v);
        }
    }

    echo '<br />';
}

答案 2 :(得分:0)

我只使用print_r进行调试,试试这个

foreach($words as $element) 
{
    if(is_array($element))
    {
      echo implode($element) . "<br />";
    }
    else
    {
      echo $element . "<br />";
    }
}