コード例 #1
0
/**
 * renderIndexItem()
 *
 * @param mixed $element
 * @return string
 */
function renderIndexItem($element)
{
    $ret = '';
    if (!is_object($element)) {
        return '';
    }
    $ret .= '<li><a href="#' . $element->id . '">' . $element->text . '</a>';
    $ret .= renderIndexItemList($element->children);
    $ret .= "</li>\n";
    return $ret;
}
コード例 #2
0
$indexdata->type = 'testtype';
$indexdata->text = 'hogehoge';
$indexdata->id = 'testid';
$indexdata->children = array($indexdata2, $indexdata3);
$t->is(renderIndexItem($indexdata), "<li><a href=\"#testid\">hogehoge</a>\n<ul>\n<li><a href=\"#testid2\">hogehoge2</a></li>\n<li><a href=\"#testid3\">hogehoge3</a>\n<ul>\n<li><a href=\"#testid2\">hogehoge2</a></li>\n</ul>\n</li>\n</ul>\n</li>\n", '階層データ。第3階層まで。');
// renderIndexItemList()
$t->diag('renderIndexItemList() 内部でrenderIndexItem()を呼び出す');
$t->is(renderIndexItemList(array()), "", '空データの場合は何も出力されない。');
$indexdata = new stdClass();
$indexdata->type = 'testtype';
$indexdata->text = 'hogehoge';
$indexdata->id = 'testid';
$indexdata->children = array();
$t->is(renderIndexItemList(array($indexdata)), "\n<ul>\n<li><a href=\"#testid\">hogehoge</a></li>\n</ul>\n", '単一データ');
$indexdata2 = new stdClass();
$indexdata2->type = 'testtype2';
$indexdata2->text = 'hogehoge2';
$indexdata2->id = 'testid2';
$indexdata2->children = array();
$indexdata3 = new stdClass();
$indexdata3->type = 'testtype3';
$indexdata3->text = 'hogehoge3';
$indexdata3->id = 'testid3';
$indexdata3->children = array($indexdata2);
$indexdata = new stdClass();
$indexdata->type = 'testtype';
$indexdata->text = 'hogehoge';
$indexdata->id = 'testid';
$indexdata->children = array($indexdata2, $indexdata3);
$t->is(renderIndexItemList(array($indexdata)), "\n<ul>\n<li><a href=\"#testid\">hogehoge</a>\n<ul>\n<li><a href=\"#testid2\">hogehoge2</a></li>\n<li><a href=\"#testid3\">hogehoge3</a>\n<ul>\n<li><a href=\"#testid2\">hogehoge2</a></li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n", '階層付データデータ');
コード例 #3
0
<?php

/**
 * ページ内インデックス
 *
 * @param $page Page
 */
$index = $page->getRawValue()->getIndexJsonDecoded();
?>
<div class="pageindex">
<?php 
echo renderIndexItemList($index);
?>
</div>