将整个数组值分配给字符串而不在PHP中循环

Dav*_*vid 0 php arrays

我有一个大约1000个值的数组,我只是使用shuffle()来改组它们.现在我想回应洗牌后的结果.但这是捕获,可以在没有循环数组或显示数组'语法'的情况下完成吗?

即:

<?php
    $myarray = array('a','b','c','d');
    shuffle($myarray);
    echo array_echo_vals_only($myarray);
    /*
    should echo: dbca
    */
?>
Run Code Online (Sandbox Code Playgroud)

Bab*_*aba 5

简单地使用 Implode

echo implode($myarray);
Run Code Online (Sandbox Code Playgroud)

或者只是减少数组 array_reduce

echo array_reduce($myarray, function($a,$b){$a .= $b; return $a;});
Run Code Online (Sandbox Code Playgroud)

玩弄 vsprintf

echo vsprintf(str_repeat("%s", count($myarray)), $myarray);
Run Code Online (Sandbox Code Playgroud)

我们也有一些疯狂的方式..

echo preg_replace("/\W/", "", json_encode($myarray));
Run Code Online (Sandbox Code Playgroud)

要么

echo str_replace(array("]","[","\"",","), "", json_encode($array));
Run Code Online (Sandbox Code Playgroud)

我的想法......

将整个数组值分配给字符串而不在PHP中循环

循环并不是一个糟糕的解决方案..你可以尝试一下......例如:

$l = "";
$c = count($array);
for($i = 0; $i < $c; ++ $i) {
    $l .= $array[$i];
}
echo $l;
Run Code Online (Sandbox Code Playgroud)

  • @salathe的问题是责备,而不是答案,恕我直言. (3认同)