tp6多應(yīng)用自定義taglib循環(huán)嵌套

程序猿 2021-03-26 09:55:08 8599瀏覽 加載中

tp6多應(yīng)用自定義taglib標(biāo)簽一文中我們用到一個(gè)方法沒(méi)有給詳細(xì)解釋?zhuān)旅嬖敿?xì)解釋下。

$typeid = $this->varOrvalue($typeid);
// 代碼
/**
 * 自動(dòng)識(shí)別構(gòu)建變量,傳值可以使變量也可以是值
 * @access private
 * @param string $value 值或變量
 * @return string
 */
private function varOrvalue($value)
{
    $flag = substr($value, 0, 1);
    if ('$' == $flag || ':' == $flag) {
        $value = $this->autoBuildVar($value);
    } else {
        $value = str_replace('"', '\"', $value);
        $value = '"' . $value . '"';
    }
    return $value;
}

上面的方法就是在taglib循環(huán)嵌套的時(shí)候可以讓需要的屬性使用變量,在獲取tag值的時(shí)候用下面方法獲取

$typeid = !empty($tag['typeid']) ? $tag['typeid']: 0;
$typeid = $this->varOrvalue($typeid);

在循環(huán)的時(shí)候用下面方法,隨便打個(gè)比方寫(xiě)個(gè)標(biāo)簽

{ht:channel id="vo"}
    {ht:article typeid="$vo.id" id="vo2"}
        {$vo.title}-{$vo2.title}-{$vo2.id}
    {/ht:article}
{/ht:channel}

在article標(biāo)簽中我們?cè)讷@取typeid的時(shí)候使用了特殊方法,所以在給標(biāo)簽傳值的時(shí)候可以使用變量。channel標(biāo)簽好比文章的分類(lèi),在循環(huán)分類(lèi)的時(shí)候調(diào)用article標(biāo)簽,把分類(lèi)下的文章也調(diào)用了出來(lái)。

標(biāo)簽: tp6 taglib
最后修改:2025-04-04 10:26:04

非特殊說(shuō)明,本博所有文章均為博主原創(chuàng)。

国产免费久久受久久,人妻AV成熟片久久久久久,亚洲综合无码日韩,国产AV无码乱码精品国产 www.sucaiwu.net