-
- function my_scandir($dir)
- {
- $files = array();
- if ( $handle = opendir($dir) ) {
- while ( ($file = readdir($handle)) !== false ) {
- if ( $file != “..” && $file != “.” ) {
- if ( is_dir ($dir . “/” . $file) ) {
- $files[$file] = scandir($dir . “/” . $file);
- }else {
- $files[] = $file;
- }
- }
- }
- closedir($handle);
- return $files;
- }
- }
复system代码
14. 포럼에서 무한 분류의 구현 원리를 간략하게 설명하세요.
답변:
-
-
/* - 데이터 테이블 구조는 다음과 같습니다.
- CREATE TABLE `category` (
- `categoryID` smallint(5) unsigned NOT NULL auto_increment,
- `categoryParentID` smallint(5) unsigned NOT NULL 기본값 '0′,
- `categoryName` varchar(50) NOT NULL 기본값 ”,
- PRIMARY KEY (`categoryID`)
- ) ENGINE=MyISAM DEFAULT CHARSET=gbk;
INSERT INTO `category` ( `categoryParentID`, `categoryName`) VALUES
- (0, '1차 카테고리'),
- (1, '2차 카테고리'),
- (1, '2차 카테고리'),
- (1, ' 2차 분류'),
- (2, '3차 분류'),
- (2, '333332′),
- (2, '234234′),
- (3, ' aqqqqqd'),
- ( 4, '하하'),
- (5, '66333666′);
*/
- < p>//분류 ID 변수 $category_id를 지정한 다음 카테고리의 모든 하위 카테고리를 반환합니다
- //$default_category는 기본적으로 선택된 카테고리입니다
- function Get_Category($category_id = 0, $level = 0, $default_category = 0)
- {
- 전역 $DB;
- $sql = “SELECT * FROM 카테고리 ORDER BY 카테고리 ID DESC”;
- $result = $DB->query( $sql );
- while ($rows = $DB ->fetch_array($result))
- {
- $category_array[$rows[categoryParentID]][$rows[categoryID]] = array('id' => $ 행[categoryID], '부모' => $rows[categoryParentID], 'name' => $rows
[categoryName]);
- }
- if ( !isset($category_array[$category_id ]))
- {
- return “”;
- }
- foreach($category_array[$category_id] AS $key => $category)
- {
- if ($category[ 'id'] == $default_category)
- {
- echo "
코드 복사
-
-
- 클래스 케이트
- {
- < ;p>function Get_Category($category_id = 0,$level = 0, $default_category = 0)
- {
- echo $category_id;
- $arr = array(
- '0′ => array (
- '1′ => array('id' => 1, 'parent' => 0, 'name' => '1111′),
- '2′ => array( 'id' => 2, '부모' => '이름' => '2222′),
- '4′ => array('id' => 4, '부모' = > 0, '이름' => '4444′)
- ),
- '1′ => array(
- '3′ => array('id' => 3, ' parent' => 1, '이름' => '333333′),
- '5′ => array('id' => 5, '부모' => 1, '이름' => ; '555555′)
- ),
'3′ => array(
- '6′ => array('id' => 6, ' parent' => 3, '이름' => '66666′),
- '7′ => array('id' => 7, '부모' => 3, '이름' => ; '77777′)
- ),
- '4′ => array(
- '8′ => array('id' => 8, 'parent' => 4, '이름 ' => '8888′),
- '9′ => array('id' => 9, '부모' => 4, '이름' => '9999')
- )
- );
if (!isset($arr[$category_id]))
- {
- return “”;
- }
foreach($arr[$category_id] AS $key => $cate)
- {
- if ($cate['id'] == $default_category)
- {
- $txt = “<옵션 선택 값=”.$cate['id'] .”";
- }else{
- $txt = “<옵션 값=”.$cate['id'].”";
- }
0)
- {
- $txt1 = “>” . str_repeat( “-”, $level ) . ” ” . $cate['이름'] . “n”;
- }else{
- $txt1 = “>” . $cate['이름'] . “n”;
- }
- $val = $txt.$txt1;
- echo $val;
- self::Get_Category($key, $level 1, $default_category);
- }
- }
function getFlush($category_id = 0,$level = 0, $default_category = 0)
- {
- ob_start();
- self: :Get_Category($category_id ,$level, $default_category);
- $out = ob_get_contents();
- ob_end_clean();
- return $out;
- }
- }
- $id =$_GET['id'];
- echo “”;
- $c = new cate();
- //$c->Get_Category();
- $ttt= $c- >getFlush($id,'0′,'3′);
- echo $ttt;
- echo “”;
- ?>
-
제제대码
|