【问题标题】:How to convert complex filename into HTML link?如何将复杂的文件名转换为 HTML 链接?
【发布时间】:2010-09-07 07:04:57
【问题描述】:

我有一个包含 PDF 文件的目录,我需要为其创建索引。这是一个带有链接列表的 PHP 页面:

<A HREF="path to file">filename</A>

文件名可能很复杂:

LVD 2-1133 - Ändring av dumpningslina (1984-11-20).pdf

在 Linux/Apache 服务器上链接到此文件的正确方法是什么?

是否有 PHP 函数可以进行这种转换?

【问题讨论】:

    标签: php html


    【解决方案1】:

    rawurlencode 将在 URL 中编码“外来”字符。

    【讨论】:

      【解决方案2】:

      urlencode() 函数会将空格转换为加号 (+),因此它不起作用。 rawurlencode 可以解决问题。谢谢。

      一定要单独转换路径的每一部分,否则path/file会被转换成path%2Ffile。 (这是我错过的)

      【讨论】:

        【解决方案3】:

        urlencode() 应该可以做你想做的事。

        编辑:urlencode() 适用于瑞典语字符。

        
            <?php
                echo urlencode("åäö");   
            ?>
        

        转换为:

        
            %E5%E4%F6
        

        【讨论】:

          【解决方案4】:

          您可以使用rawurlencode() 根据 RFC 1738 规范转换字符串。 此函数将所有非字母数字字符替换为其关联代码。

          urlencode()的区别在于空格被编码为加号。

          您可能想要使用最后一个。

          这种技术称为百分比或 URL 编码。详情请见Wikipedia

          【讨论】:

            【解决方案5】:

            URL encoding。我认为它是 PHP 中的 urlencode()

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2018-03-30
              • 2020-08-26
              • 2020-02-14
              • 2019-12-13
              • 2013-03-30
              • 2012-09-20
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多