-2

我已经搜索了几个小时,但我似乎无法弄清楚如何将 target="_blank" 属性包含到这个 php 的 'href' => 部分而不破坏它。

这是代码:

'chat' => array(
            'title' => 'Chat',
            'href' => 'http://mywebsite.com/',
            'show' => true,
            'sub_buttons' => array(
            ),
        ),

是否可以在此代码中使用该目标属性?

这是来自 SMF 论坛中使用的 Subs.php 文件。

4

2 回答 2

1

好吧,您可以尝试附加" target="_blank到该href值,但如果这样可行,那么您手头就有一个严重的问题(该值应该被转义)。

在这种情况下,最好扩展将这个数组转换为 HTML 的任何方法,这target也是一个可接受的属性。

于 2012-10-05T01:14:24.507 回答
0

是的@sachleen 是正确的。您刚刚提供了一个数组。将有一些函数/方法来创建 url。要么添加一个具有属性的额外选项数组,然后像这样构建它。

我从 Aura.View 助手复制的示例

https://github.com/auraphp/Aura.View#using-helpers

$this->anchor($href, $text)返回一个<a href="$href">$text</a>标签

这是在代码的帮助下实现的

class Anchor extends AbstractHelper
{
    public function __invoke($href, $text, $attribs = [])
    {
        // build text and return
        if ($attribs) {
            $skip = ['href'];
            $attr = $this->attribs($attribs, $skip);
            return "<a href=\"$href\" $attr>$text</a>";
        } else {
            return "<a href=\"$href\">$text</a>";
        }
    }
}

https://github.com/auraphp/Aura.View/blob/master/src/Aura/View/Helper/Anchor.php

希望有帮助。

于 2012-10-05T01:20:30.067 回答