跳转到内容

HTML组件


注意

该组件将在 Phalcon 的未来版本中被弃用。您可以使用Phalcon\Html\Helper\Breadcrumbs一个通过TagFactory

概览

许多 Web 应用程序中常见的 HTML 元素之一是面包屑。这些链接通常由空格或/字符分隔,表示应用程序的树形结构。其目的是为用户提供另一种简单的视觉方式来导航整个应用程序。

一个例子是具有admin模块、invoices区域和view invoice页面的应用程序。通常情况下,您会先选择admin模块,然后从链接中选择invoices(列表),再点击列表中的某张发票进行查看。为了表示这种树状结构,显示的面包屑可能是:

Home / Admin / Invoices / Viewing Invoice [1234]
上面的每个词(最后一个除外)都是指向相应页面的链接。这样用户可以快速返回到不同的区域,而不需要点击后退按钮或使用其他菜单。

Phalcon\Html\Breadcrumbs提供了添加文本和 URL 的功能。调用时生成的 HTMLrender()将每个面包屑包含在<dt>标签中,而整个字符串则包含在<dl>标签中。

方法

public function add(
    string $label, 
    string $link = ""
): Breadcrumbs
添加一个新的面包屑。

在下面的例子中,添加一个带有链接的面包屑,然后添加一个没有链接的面包屑(通常是最后一个)。

$breadcrumbs
    ->add("Home", "/")
    ->add("Users")
;

public function clear(): void
清除所有面包屑。

$breadcrumbs->clear()

public function getSeparator(): string
返回用于面包屑的分隔符。

public function remove(string $link): void
通过 URL 删除面包屑。

在下面的例子中,通过 URL 删除一个面包屑,同时也删除一个没有 URL 的面包屑(最后一个链接)。

$breadcrumbs->remove("/admin/user/create");
$breadcrumbs->remove();

public function render(): string
渲染并输出面包屑的 HTML。使用的模板是:

<dl>
    <dt><a href="Hyperlink">Text</a></dt> /
    <dt><a href="Hyperlink">Text</a></dt> /
    <dt>Text</dt>
</dl>
最后设置的面包屑将不会有链接,只会显示其文本。每个面包屑都被包裹在<dt></dt>标签中。整个集合被包裹在<dl></dl>标签中。您可以结合 CSS 使用它们,根据您的应用程序需求格式化屏幕上的面包屑。

echo $breadcrumbs->render();

public function setSeparator(string $separator)
面包屑之间的默认分隔符是/。如果需要,您可以使用此方法设置不同的分隔符。

$breadcrumbs->setSeparator('-');

public function toArray(): array
返回内部面包屑数组

无噪 Logo
无噪文档
25 年 6 月翻译
文档源↗