$out=array("0"=>"a","1"=>"a","2"=>"a","3"=>"a","4"=>"a");function out_loop($pos)
{
global $out;

for($i=0;$i<26;$i++)
{
$out[$pos]=chr($i+97);
if($pos<4)
out_loop($pos+1);
echo implode("",$out)."<br>";
}
}out_loop(0);
5位的组合……可不是小数目。运行起来你不要以为死机了才好。

解决方案 »

  1.   

    set_time_limit(0);$out=array("0"=>"a","1"=>"a","2"=>"a","3"=>"a","4"=>"a");function out_loop($pos,$max)
    {
    global $out;

    for($i=0;$i<26;$i++)
    {
    $out[$pos]=chr($i+97);
    if($pos<$max)
    out_loop($pos+1);
    echo implode("",$out)."<br>";
    }
    }for($i=0;$i<4;$i++)
    out_loop(0,$i);看起来你还想要包括1~4位的组合。衷心希望你不会死机。
      

  2.   

    错了。是存成字符型的。还要长几倍……200多M吧
    还是改成存文件的,不然死机是必然。set_time_limit(0);$out=array();
    $fp=fopen("d:\\xx.txt","w");function out_loop($pos,$max)
    {
    global $out,$fp;

    for($i=0;$i<26;$i++)
    {
    $out[$pos]=chr($i+97);
    if($pos<$max)
    out_loop($pos+1,$max);
    $str=implode("",$out)."\r\n";
    @fwrite($fp,$str,strlen($str));
    }
    }for($i=0;$i<5;$i++)
    {
    out_loop(0,$i);
    }
    fclose($fp);
      

  3.   

    其实是为了写一段检查域名有没有被注册的程序的<?
    set_time_limit(0);$out=array();
    //$fp=fopen("d:\\xx.txt","w");function out_loop($pos,$max)
    {
    global $out;for($i=0;$i<26;$i++)
    {
    $out[$pos]=chr($i+97);
    if($pos<$max)
    out_loop($pos+1,$max);
    $str=implode("",$out);
    //echo $str;
    checkDomain($str);
    }
    }for($i=;$i<3;$i++)
    {
    out_loop(0,$i);
    }
    function checkDomain($domainName)
    {
        echo "<br><br><span style='font-size:11px'>check ing ".$domainName.".cn ing...</span><br>";
        $file=file("http://regall.sohu.net/cneng/cuscheckdomain.jsp?domainName=". $domainName ."&suffix=.cn&postFlag=true");
        //echo "129 hang shi".$file[129];
        if (strrpos($file[129],"已被注册"))
        {
            echo "<span style='font-size:12px'>".$domainName.".cn 已经注册</span><br>";
        } else
        {
            echo "<b style='color:#FF0000; font-size:12px'>".$domainName.".cn</b> 还没被注册,行动吧!<br>";
        }}
    ?>