gpt4 book ai didi

php - 在 Zend Framework View 脚本中使用 baseUrl() 重要吗?

转载 作者:行者123 更新时间:2023-12-02 05:29:54 25 4
gpt4 key购买 nike

有些人报告了在 View 脚本中访问、设置或从 baseUrl() 获取正确值的问题。但我想知道为什么有必要使用它,至少在像我这样的情况下,ZF 应用程序位于虚拟专用主机 (Amazon EC2) 上,我可以完全控制目录结构和 apache 重写规则,以及路线。

例如,我知道在文件系统中 foo.jpg 位于 public/images/foo.jpg 中,并且应用程序的 mod_rewrite 会将所有请求定向到public - 所以在我看来,脚本编写类似的东西要简单/清晰和高效得多

<img src="/images/foo.jpg" />

代替

<img src="<?php echo $this->baseUrl();?>/images/foo.jpg" />

baseUrl() 的使用真正提供了什么样的面向 future 的稳健性或其他好处?到目前为止,我根本没有使用过它,也没有遇到任何问题。但我继承了一些使用它的代码,我倾向于在编辑包含它们的 View 脚本时删除这些用途。我以后会后悔吗?

最佳答案

这样用,其实用处不大,但反过来说,这样用

echo $this->baseUrl('/images/foo.jpg')

将来可能会很有用,因为您可以在打印 URL 之前添加逻辑。想象一下,几年后您的网站增长速度超出您的预期,您必须将所有静态内容移动到内容分发网络 (CDN),您将不得不手动(或使用搜索和替换)更正所有图像/css/js 实例 URL。使用 baseUrl()(或将其命名为 assetUrl()),您只需添加 CDN 的 url,它将在您的应用程序中的任何位置得到修复。

编辑

我在您继承的代码中找到了 baseUrl() 的用法:

如果您的站点不在域的根目录中,它允许您向所有链接和引用添加一个公共(public) URL 部分

i.e. : www.mysite.com/zf-app/

在你的配置文件中你只需要添加

resources.frontController.baseUrl = "/zf-app/"

为了让它工作,你的所有链接都将以该部分为前缀

关于php - 在 Zend Framework View 脚本中使用 baseUrl() 重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12531396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com