gpt4 book ai didi

symfony - 如何获取图像的绝对文件系统路径 Symfony2/Twig

转载 作者:行者123 更新时间:2023-12-01 08:58:55 24 4
gpt4 key购买 nike

我使用 Symfony2 和 twig 来生成 HTML,但是我生成的 HTML 不是用于 Web 浏览器的,而是将它传递给将 HTML 转换为 PDF 文档的库。

我面临着两个相关的问题。

问题 1。此 PDF 将包含图像,我不希望这些图像直接从 Internet 上可见(例如,我不希望这些图像出现在 webroot 下)。通常我将 Assets 放在“site/src/path-to-bundle/Resources/public/assets”中,但是,我不希望该图像在网络上可见。任何人都可以建议一个好的文件夹来放置不能通过网络访问的“ Assets ”。 (只是试图与 Symfony2 命名技术以及其他程序员通常会如何做到这一点保持一致)

问题 2。由于我生成的 HTML 是用于 HTML 到 PDF 生成器的,因此引用文件系统上具有绝对路径的图像是最实用的(Web 路径或 URL 不适用于这种情况)。

例如

<!-- This is the correct HTML code that is needed in this situation -->
<img src="/home/user/absoulte-file-system-path-to/image.png" />

<!-- These are actually incorrect in this situation -->
<img src="assets/image.png" />
<img src="http://www.somedomain.com/assets/image.png" />

我想知道如何获得上面提到的图像的绝对路径(我不介意这是在Twig模板中还是在 Controller 中完成)

最佳答案

在你的 app/config/config.yml

twig:
globals:
root_path: %kernel.root_dir%

并且您可以使用根项目的相对路径来引用 Assets
 <img src="{{ root_path }}/../secret-folder/image.png" />

关于symfony - 如何获取图像的绝对文件系统路径 Symfony2/Twig,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22988163/

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