Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

php chuyển đổi mảng thành một tập hợp lồng nhau phân cấp cho cơ sở dữ liệu

Mảng này không ổn.

Điều này đang hoạt động

$in_array = array (
    // array(
            'id' => 400,
            'n' => 'Sub 1a',
            's' => array (
            //       array (
                            'n' => 'Sub 1b',
                            'id' => 421,
                            's' => array (
                    //               array (
                                            'n' => 'Sub 1c',
                                            'id' => 422,
                        //              )
                              )
                //    )
        //      )
        ),
     array(
            'id' => 500,
            'n' => 'Sub 2a',
            's' => array (
                //  array (
                            'n' => 'Sub 2b',
                            'id' => 521,
                            's' => array (
                        //          array (
                                            'n' => 'Sub 3b',
                                            'id' => 522,
                            //          )
                              )
                    //  )
                )
        )   
);

$a_newTree = array();
function rebuild_tree($parent, $left) {   
global $a_newTree;

$indexed = array();
$right = $left+1;   

if(array_key_exists('n',$parent)){
    $indexed['n'] = $parent['n'];
}else{
    $indexed['n'] = '?';
}


    foreach($parent as $cat){
            if(is_array($cat)){
                $right = rebuild_tree($cat, $right);    
            }
    }


array_push($a_newTree,array(':lft'=>$left,':rgt'=>$right,':name'=>$indexed['n']));

return $right+1;   
}   

rebuild_tree($in_array, 1);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql tự động tăng dần khóa chính chữ-số?

  2. MySQL:chọn 5 hàng trước và sau hàng cụ thể

  3. CodeIgniter / PHP / MySQL:Truy xuất dữ liệu bằng JOIN

  4. MySQL:Nhận kết quả trả về từ CHÈN CHÈN CHÈN

  5. Mô-đun Node.js MySQL - ném lỗi; // Xoay lại các lỗi không phải MySQL;