我正在 Laravel 中建立博客,但似乎无法弄清楚如何使用 HTML::link(..)
生成转义 URL。例如,我在博客中有指向不同类别的链接,例如部门新闻,我正在尝试获取格式如下的链接 - http://localhost/blog/category/department+news
.,其中 Department News
由 $post->category
我试过下面的代码,它生成了http://localhost/blog/Department News
{{ HTML::link('admin/blog/category/' . $post->category, $post->category) }}
如何转义并生成所需的 URL?
最佳答案
通常,您会让每个帖子类别使用数据库中的 slug
列作为 URL 片段,然后使用如下内容:
HTML::link('blog/category/'.$post->category->slug, $post->category->name)
Laravel 似乎无法自动编码 URL 的特定部分,所以你必须自己做:
HTML::link(
'admin/blog/category/'.urlencode(strtolower($post->category)),
$post->category
)
您可能要考虑使用“slug”方法。您不必将它存储在数据库中,您可以让您的类即时生成它:
class Category {
function slug() {
return urlencode(strtolower($this->name));
}
}
我不确定你到底在做什么,但希望你明白了。
关于php - HTML 的 URLEncode::Laravel 中的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14200587/