當前位置: 首頁>>代碼示例>>PHP>>正文


PHP grade_tree::inject_fillers方法代碼示例

本文整理匯總了PHP中grade_tree::inject_fillers方法的典型用法代碼示例。如果您正苦於以下問題:PHP grade_tree::inject_fillers方法的具體用法?PHP grade_tree::inject_fillers怎麽用?PHP grade_tree::inject_fillers使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在grade_tree的用法示例。


在下文中一共展示了grade_tree::inject_fillers方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: inject_fillers

 /**
  * Static recursive helper - makes full tree (all leafes are at the same level)
  *
  * @param array &$element The seed of the recursion
  * @param int   $depth How deep are we?
  *
  * @return int
  */
 public function inject_fillers(&$element, $depth)
 {
     $depth++;
     if (empty($element['children'])) {
         return $depth;
     }
     $chdepths = array();
     $chids = array_keys($element['children']);
     $last_child = end($chids);
     $first_child = reset($chids);
     foreach ($chids as $chid) {
         $chdepths[$chid] = grade_tree::inject_fillers($element['children'][$chid], $depth);
     }
     arsort($chdepths);
     $maxdepth = reset($chdepths);
     foreach ($chdepths as $chid => $chd) {
         if ($chd == $maxdepth) {
             continue;
         }
         for ($i = 0; $i < $maxdepth - $chd; $i++) {
             if ($chid == $first_child) {
                 $type = 'fillerfirst';
             } else {
                 if ($chid == $last_child) {
                     $type = 'fillerlast';
                 } else {
                     $type = 'filler';
                 }
             }
             $oldchild =& $element['children'][$chid];
             $element['children'][$chid] = array('object' => 'filler', 'type' => $type, 'eid' => '', 'depth' => $element['object']->depth, 'children' => array($oldchild));
         }
     }
     return $maxdepth;
 }
開發者ID:EmmanuelYupit,項目名稱:educursos,代碼行數:43,代碼來源:lib.php


注:本文中的grade_tree::inject_fillers方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。