我想删除数组之间的空格,但是我使用了不同的代码,例如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
答案 0 :(得分:3)
只需更改语法
即可$res[] = "$item $comb";
进入这种语法:
$res[] = "$item$comb";
删除$ res中的空格。
你尝试过吗?答案 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 />";
}
}