当前位置:Gxlcms > PHP教程 > 修改一段代码,高手指教了

修改一段代码,高手指教了

时间:2021-07-01 10:21:17 帮助过:5人阅读

$char = "111112222233333";preg_match_all("|(.*)|U", $char, $out,PREG_PATTERN_ORDER);echo $out[0][0];echo $out[0][1];echo $out[0][2];



上面这段代码可以获取字符串之间的值,但我要的效果是

我不知道字符串里有多少个nnnnn,我想获取所有div之间的所有值并且随机打乱顺序
比如字符串"11111222223333344444";
我想得到的结果是:22222444443333311111


麻烦知道的高手直接给完整代码,谢谢了


回复讨论(解决方案)

补充:div之间有中文字符

$char = "111112222233333";$ary = explode('', $char);shuffle($ary);foreach($ary as $v){	echo ''.$v;}

$char = "111112222233333";
$ary = explode('', $char);
shuffle($ary);
foreach($ary as $v)
{
if($v!=""){
echo ''.$v;
}
}
楼上的加个判断值不为空更好点,数组后面会多循环一次,后面会多带个

谢谢楼上的两位大哥,这是一个循环
那怎么把这个值重新放到字符串里
比如$char1 = ''

代码应当怎么写,小弟不怎么懂php的,再麻烦下,谢谢了

$char = "111112222233333";preg_match_all("|(.*)|U", $char, $out,PREG_PATTERN_ORDER);shuffle($out[0]);$s= join('',$out[0]);echo $s;




用5楼的代码

$char = "111112222233333";preg_match_all("|(.*)|U", $char, $out,PREG_PATTERN_ORDER);shuffle($out[0]);$char= join('',$out[0]);echo $char;

人气教程排行