您当前的位置:学无止境 > php字符串随机所有组合(每个字符的长度必须一样)网站首页学无止境
php字符串随机所有组合(每个字符的长度必须一样)
发布时间:2021-03-19 17:45:58编辑:三青查看次数:913
字符串随机所有组合(每个字符的长度必须一样)
/**
* 符串所有组合
* @param string $str 原字符串
* @param string $tmp 临时字符串
* @param array $result # 组合的结果
* @param int $charLen # 每个字符对应的长度.如: 1、数字和英文 占1个字节 3、utf-8的中文 占3个字节
*
* @date 2021/3/19
*/
function strCombination(string $str, string $tmp, array &$result, int $charLen = 1)
{
$long = strlen($str);
if ($long == 0){
if(!in_array($tmp, $result)){
$result[] = $tmp;
}
}else{
for ($i = 0; $i < $long;) {
$newStr = substr_replace($str, '', $i, $charLen);
$newTmp = substr($str, $i, $charLen);
strCombination($newStr, $tmp . $newTmp, $result, $charLen);
$i = $i + $charLen;
}
}
}
$str = 'asdf';
$charLen = 1;
$result = [];
strCombination($str,'', $result, $charLen);
print_r($result);关键字词:字符串,随机,所有,组合,php
下一篇:go简单操作kafka
评论:
