亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用PHP數(shù)組實(shí)現(xiàn)無限分類,不使用數(shù)據(jù)庫,不使用遞歸.

 更新時間:2006年12月09日 00:00:00   作者:  
復(fù)制代碼 代碼如下:

<?php

class cat
{
    public $data;

    public function __construct() 
    {
        @include "data.php";
        $this->data = $class;
    }


    public function CreateSortLevel($fatherlevel)
    {
        if(empty($fatherlevel))
        {
            if(is_array($this->data))
            {
                $fast_level = array();
                foreach($this->data as $value)
                {
                    if(strlen($value["sortlevel"]) == 3)
                    {
                        $fast_level[] = $value["sortlevel"];
                    }
                }
                $max_fast_level = max($fast_level);
                unset($fast_level);
                $sub   = ceil($max_fast_level) + 1;
                switch(strlen($sub))
                {
                    case 1:
                        return "00{$sub}";
                        break;
                    case 2:
                        return "0{$sub}";
                        break;
                    case 3:
                        return $sub;
                        break;
                }
            }
            else
            {
                return "001";
            }
        }

        foreach($this->data as $val)
        {
            if(eregi("^".$fatherlevel.".{3}$",$val["sortlevel"]))
            {
                $level[] = $val["sortlevel"];
            }
        }
        if(is_array($level))
        {
            $max_two_level = max($level);
            $sub   = ceil(substr($max_two_level,-3)) + 1;
            switch(strlen($sub))
            {
                case 1:
                    return substr($max_two_level,0,strlen($max_two_level)-1).$sub;
                    break;
                case 2:
                    return substr($max_two_level,0,strlen($max_two_level)-2).$sub;
                    break;
                case 3:
                    return substr($max_two_level,0,strlen($max_two_level)-3).$sub;
                    break;
            }
        }
        else
        {
            return $fatherlevel."001";
        }
    }

    public function orders()
    {
        $op = $this->data;
        $this->array_usort($op,"sortlevel",SORT_ASC);
        return $op;
    }

    public function add_cat($sortname,$sortlevel)
    {
        $data = time();
        $arr = array
        (
            "{$data}" => array
            (
              "sortname"  => $sortname,
              "sortlevel" => $this->CreateSortLevel($sortlevel)
            )
         );
        $rs = $this->data + $arr;
        $this->add_wirte($rs);
    }

    private function array_usort(&$array)
    {
        $args = func_get_args();
        for($i=1,$cmd='',$size=count($args);$i<$size;$i++)
        {
            $num   = $i;
            $order = "";
            $con   = "@strcmp($a['$args[$num]'],$b['$args[$num]'])";
            while(++$i < $size)
            {
                if($args[$i] === SORT_NUMERIC)
                {
                    $con = "($a['$args[$num]']-$b['$args[$num]'])";
                }
                else if($args[$i] === SORT_DESC)
                {
                    $order = "-1*";
                }
                else if(is_string($args[$i]))
                {
                    $i--;
                    break;
                }
            }
            $cmd .= "if($num = $con)return $order$num;else ";
            if($order != '')
            {
                $i++;
            }
        }
        @usort($array,@create_function('$a,$b',"$cmd return 0;"));
    }

    public function wirte($sortname,$sortlevel)
    {
        $array  = "<?phprn";
        $array .= '$class = array'."rn(rn";
        $array .= '  "'.time().'" => array'."rn";
        $array .= '      ('."rn";
        $array .= '           "sortname" => "'.$sortname.'"'.",rn";
        $array .= '           "sortlevel" => "'.$this->CreateSortLevel($sortlevel).'"'."rn";
        $array .= '      )'."rn";
        $array .= ")rn?>";
        file_put_contents("data.php",$array);
    }

    public function add_wirte($rs)
    {
        $array  = "<?phprn";
        $array .= '$class = array'."rn(rn";
        foreach($rs as $key=>$value)
        {
            $array .= "rn";
            $array .= '  "'.$key.'" => array'."rn";
            $array .= '      ('."rn";
            $array .= '           "sortname" => "'.$value["sortname"].'"'.",rn";
            $array .= '           "sortlevel" => "'.$value["sortlevel"].'"'."rn";
            $array .= '      ),';
        }
        $array  = substr($array,0,-1);
        $array .= "rn)rn?>";
        file_put_contents("data.php",$array);
    }
}


$cat = new cat();
if($_GET["action"] == "add")
{
    if(strlen($_POST["sortname"]) < 2)
    {
        echo '<script language="JavaScript">alert("請?zhí)砑臃诸惷?)</script>';
        echo '<script language="JavaScript">location.href="/cat.php?action=tpl"</script>';
        exit;
    }
    if(file_exists("data.php"))
    {
        $cat->add_cat($_POST["sortname"],$_POST["sortlevel"]);
        echo '<script language="JavaScript">alert("添加成功")</script>';
        echo '<script language="JavaScript">location.href="/cat.php"</script>';
        exit;
    }
    else
    {
        $cat->wirte($_POST["sortname"],$_POST["sortlevel"]);
        echo '<script language="JavaScript">alert("添加成功")</script>';
        echo '<script language="JavaScript">location.href="/cat.php"</script>';
        exit;
        exit;
    }
}

if($_GET["action"] == "tpl")
{
    echo '<form id="form1" name="form1" method="post" action="cat.php?action=add">';"rn";
    echo '<select name="sortlevel">'."rn";
    echo '<option value="" selected="selected">根分類</option>'."rn";
    foreach($cat->orders() as $val)
    {
        echo '<option value="'.$val["sortlevel"].'">';
        $clevel = strlen(substr($val['sortlevel'],0,-3));
        for($i = 0; $i < $clevel; $i++)
        {
            echo "-";
        }
        echo $val['sortname']."</option>rn";
    }
    echo "</select>rn";
    echo '&nbsp;&nbsp;<input name="sortname" type="text" id="sortname" />'."rn";
    echo '<input type="submit" name="Submit" value="提交" />';
    echo "</form>";
    exit;
}

foreach($cat->orders() as $value)
{
    $level = strlen(substr($value['sortlevel'],0,-3));
    for($i = 0; $i < $level; $i++)
    {
        echo "-";
    }
    echo $value["sortname"];
    echo "<br>";
}
?>

相關(guān)文章

  • PHPTree——php快速生成無限級分類

    PHPTree——php快速生成無限級分類

    在開發(fā)中經(jīng)常需要用到樹形數(shù)據(jù),比如無限多級分類,就是典型的樹形結(jié)構(gòu)。這里面的算法,用到了遞歸思想,為了簡化開發(fā)過程,我編寫了一個工具來提升開發(fā)效率,需要的朋友可以參考下
    2018-03-03
  • php使用Imagick生成圖片的方法

    php使用Imagick生成圖片的方法

    這篇文章主要介紹了php使用Imagick生成圖片的方法,實(shí)例分析了php基于Imagick實(shí)現(xiàn)添加水印、文字的圖片功能,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • php實(shí)現(xiàn)scws中文分詞搜索的方法

    php實(shí)現(xiàn)scws中文分詞搜索的方法

    這篇文章主要介紹了php實(shí)現(xiàn)scws中文分詞搜索的方法,詳細(xì)介紹了scws中文分詞搜索的具體步驟與相關(guān)使用技巧,并提供了scws的本站下載地址,需要的朋友可以參考下
    2015-12-12
  • php語法技巧代碼實(shí)例

    php語法技巧代碼實(shí)例

    這篇文章主要介紹了php語法技巧代碼實(shí)例,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,有感興趣的同學(xué)可以看一下
    2021-01-01
  • PHP中使用mktime獲取時間戳的一個黑色幽默分析

    PHP中使用mktime獲取時間戳的一個黑色幽默分析

    mktime(hour,minute,second,month,day,year,is_dst)這是mktime的語法說明,一目了然應(yīng)該不難寫出一個時間戳的代碼來
    2012-05-05
  • php注冊系統(tǒng)和使用Xajax即時驗(yàn)證用戶名是否被占用

    php注冊系統(tǒng)和使用Xajax即時驗(yàn)證用戶名是否被占用

    這篇文章主要為大家詳細(xì)介紹了php注冊系統(tǒng)和使用Xajax即時驗(yàn)證用戶名是否被占用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • 默默簡單的寫了一個模板引擎

    默默簡單的寫了一個模板引擎

    默默簡單的寫了一個模板引擎...
    2007-01-01
  • php $_SESSION會員登錄實(shí)例分享

    php $_SESSION會員登錄實(shí)例分享

    這篇文章主要為大家詳細(xì)介紹了php $_SESSION會員登錄實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • php實(shí)現(xiàn)word轉(zhuǎn)html的方法

    php實(shí)現(xiàn)word轉(zhuǎn)html的方法

    這篇文章主要介紹了php實(shí)現(xiàn)word轉(zhuǎn)html的方法,涉及PHP調(diào)用com組件操作word文檔的相關(guān)技巧,需要的朋友可以參考下
    2016-01-01
  • php 文章調(diào)用類代碼

    php 文章調(diào)用類代碼

    自己寫的MonolithCMS上面用到的文章類,可能不是很通用, 但是勝在我有全部的注釋
    2011-08-08

最新評論